2014-02-23 2 views
0

я пытаюсь сделать форму в RoR, используя carrierwave и я получаю следующее сообщение об ошибке:RoR undefined метод `persisted? '

**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 

Также я буду рад, если кто-нибудь скажет мне, почему (таблица не существует) появляется.

Любые идеи приветствуются, благодаря как читателям, так и ответчикам. {:

ответ

1

Run DB миграции с:

bundle exec rake db:migrate 

Это исправить "Таблица не существует" сообщение.

Затем замените Code от вашей формы с Code.new и она должна работать:

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

Я также советую вам изучить некоторые основы Rails.

0

Вы должны передать экземпляр класса методу form_for

= form_for Code.new, :as => :code, :html => {:multipart => true} do |f| 
Смежные вопросы