我正在使用Rails 5.2.3,并且正在尝试将ActiveStorage用于新的脚手架议程。我已遵循此tutorial
我想在文件系统上本地保存文件。
当我想通过Web表单创建新对象时,出现以下错误:
无法自动加载常量ActiveStorage :: Blob :: Analyzable,预期 /home/vagrant/.rvm/gems/ruby-2.6.2/gems/activestorage-5.2.3/app/models/active_storage/blob/analyzable.rb 定义它
从邮件日志中:
[错误]博客创建(NoMethodError)“无法为n加载
Rails.config.active_storage.service
:\ nundefined method`fetch'
当我刷新页面时,我得到:
nil:NilClass的未定义方法'fetch'
模型:
has_one_attached :image
控制器:
def create
@blog = Blog.new(blog_params)
.
.
end
def blog_params
params.require(:blog).permit(:name, :audit_comment, :image)
end
观看次数:
= simple_form_for(blog) do |f|
= f.error_notification
.form-inputs
= f.input :name, label: 'Name'
= f.file_field :image
= f.input :audit_comment
.form-actions
= f.button :submit
在 development.rb 中:
config.active_storage.service = :local
我错过了什么?
我已经运行rails active_storage:install
并以suggested的设置进行迁移
当我安装新的Rails应用程序时,它工作正常。