RoR未定义的方法`坚持?'

时间:2014-02-23 17:31:56

标签: ruby-on-rails methods

我正在尝试使用carrierwave在RoR中创建一个表单,我收到以下错误:

**undefined method `persisted?' for Code(Table doesn't exist):Class**

以下是我的表单中的代码:

    = form_for Code, :as => :code, :html => {:multipart => true} do |f|

        p
           = f.file_field :code
        p
           = f.submit

有问题的一行是:

   = f.submit

这是我的模特:

class Code < ActiveRecord::Base

    attr_accessor :name, :code
    mount_uploader :code, CodeUploader

end

如果有人能告诉我为什么(表不存在)出现,我也会很高兴。

欢迎任何想法,感谢读者和回答者。 {:

2 个答案:

答案 0 :(得分:0)

您应该将类​​的实例传递给form_for方法

= form_for Code.new, :as => :code, :html => {:multipart => true} do |f|

答案 1 :(得分:0)

使用以下命令运行db迁移:

bundle exec rake db:migrate

这将修复“表不存在”消息。

然后,使用Code替换表单中的Code.new,它应该有效:

= form_for Code.new, :as => :code, :html => {:multipart => true} do |f|

我还建议你学习一些关于Rails的基础知识。

相关问题