我有一个rake任务,使用faker gem为应用程序添加随机数据.然而,我们也有图片(比如logo),我们希望在这个rake任务中上传.

我们已经设置了回形针,但没有办法在rake任务中以编程方式上传它们.有什么 idea 吗?

推荐答案

你说的程序化是什么意思?您可以设置一个方法,该方法将沿着

my_model_instance = MyModel.new
file = File.open(file_path)
my_model_instance.attachment = file
file.close
my_model_instance.save!

#attachment来self 们模型中的回形针声明.在这种情况下,我们的模型看起来像

class MyModel < ActiveRecord::Base
  has_attached_file :attachment
end

我们在启动项目时也做过类似的事情.

Ruby-on-rails相关问答推荐

Trailblazor 操作 -> 集合 :attribute(has_many 通过关联) 与填充器 -> 如何填充 Reform::Form 形式的 slugs 数组?

仅在两个子域间共享Rails cookies,并为所有其他子域使用单独的cookie

如何让删除链接响应 Rails 7 中的 turbo_stream 和 html?

线程如何在 Web 应用程序中工作?

Ruby Sinatra Web 服务在 localhost:4567 上运行,但不在 IP 上

rails select标签,预先 Select 了多个值

Postgres on Rails 致命:数据库不存在

安装mysql2(0.4.8)时出错,Bundler无法继续

simple_forms 自定义数据属性

如何将 yaml 文件解析为 ruby​​ 哈希和/或数组?

Rails 助手应该假设实例变量存在还是应该将它们作为参数接收?

Rails - 从日期和时间戳获取日期

如何在特定时区(最好是我的应用程序的默认时区,而不是 UTC)中创建新的 DateTime 对象?

控制器 helper_method

强参数需要多个

Rails 4模块的未初始化常量

如何使用 url 连接到 postgresql

使用 ActiveRecord 获取列名

如何在 Rails 4 中测试控制器关注点

是否可以输出rake db:migrate产生的 SQL 更改脚本?