利用CarrierWave上传文件

来源:互联网 发布:乐玩编程助手 编辑:程序博客网 时间:2024/06/03 09:07

新建项目

mkdir UploadTest
rails new .


添加CarrierWave支持

在Gemfile文件中加上
gem 'carrierwave'
执行
bundle install

新建模型,添加CarrierWave属性支持

rails g model user name:string head_pic:string
rails g uploader file_helper
可以看到在 根/app/uploaders下新生成了文件file_helper_uploader.rb,里面有FileHelperUploader类,这就是支持上传的类

在 根/app/models/user.rb里面找到类User,加上
class User < ApplicationRecord
  mount_uploader :head_pic, FileHelperUploader
end
这样就为User模型的head_pic属性添加了CarrierWave支持

新建Controller测试上传

rails g controller Test test_upload

class TestController < ApplicationController  skip_before_filter :verify_authenticity_token  def test_upload    #在User模型发生save或者create动作的时候,上传动作就会执行    user=User.create(    name:"aaa",    head_pic:request.POST["head_pic"]    )    json_str =""    if user!=nil      json_str = "{'head_pic':'0.0.0.0#{user.head_pic}'}" #返回文件存储路径,即下载路径    else      json_str = "falied"     end    render json: json_str  endend



运行测试

rails db:migrate RAILS_ENV=development
rails s -b 0.0.0.0 -p 3333









原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 身份号码泄露了怎么办 我身份证泄露了怎么办 身份证信息泄漏了怎么办 无锡身份证丢了怎么办 人在外地怎么办身份证 欠空放公司不还怎么办 兼职要身份证照片怎么办 身份证刷不了磁怎么办 身份证不能刷了怎么办 身份证指纹错了怎么办 指纹手机丢了怎么办 异地办理临时身份证怎么办 杭州办理外地身份证怎么办 办理身份证没有户口本怎么办 2018身份证掉了怎么办 双户口注销社保怎么办 常用户口被注销怎么办 刚到厦门怎么办身份证 新疆身份证丢了怎么办 技能证书丢了怎么办 16岁拍身份证怎么办 16岁以下怎么办身份证 办身份证要证明怎么办 15岁怎么办银行卡淘宝 满16岁怎么办银行卡 电脑最小化后不见了怎么办 满16周岁怎么办银行卡 给儿童办身份证怎么办 当兵前身份证号码不符怎么办 身份证后六位密码x怎么办 借了贷款人死了怎么办 贷款实在还不起怎么办 个人贷款还不起怎么办 珠海派出所办事不公平怎么办 改身份证后学籍怎么办? 威海身份证丢了怎么办 车牌轻微变形了怎么办 车牌照丢一个怎么办 小车车牌掉了怎么办 车牌撞变形了怎么办 车牌烂了一块怎么办