Вставьте обязательный комментарий« Я новичок Rails »здесь.Rails 4.0 undefined method `[] 'for nil: NilClass
TL; DR: Не удается .create или .new экземпляр модели
Моя основная структура является то, что пользователи должны иметь возможность иметь несколько заметок, которые будут иметь вложения, обрабатываемые на «скрепку» драгоценный камень , Тем не менее, я не могу показаться, чтобы иметь возможность на самом деле создать заметку:
undefined method `[]' for nil:NilClass
def create
@user = User.find(params[:user_id])
@note = @user.notes.create(params[:note].permit(:topic, :class, :content))
redirect_to user_path(@user)
end
Это идет от контроллера Примечания и ошибка возникает в строке, где я использую @ user.notes.create. То, что я сварил, так это то, что ноты пустые в начале, и по какой-то причине «создать» вызов терпит неудачу в пустом методе заметок. Интересно, что Note.new также терпит неудачу с той же ошибкой, если я просто пытаюсь создать экземпляр пустой заметки для работы.
Модели для справки:
class Note < ActiveRecord::Base
belongs_to :user
has_attached_file :content,
:storage => 's3',
:bucket => ENV['AWS_BUCKET'],
:path => "uploads/:attachment/:id/:styles.:extension",
:styles => {
:medium => "300x300>",
:thumb => "100x100>" },
:s3_credentials => {
:access_key_id => ENV['AWS_ACCESS_KEY_ID'],
:secret_access_key => ENV['AWS_SECRET_ACCESS_KEY'] },
:s3_permissions => 'public-read'
end
class User < ActiveRecord::Base
has_many :notes
validates_presence_of :username
validates_presence_of :email
validates_presence_of :school
validates_format_of :email, :with => /\A[-a-z0-9_+\.]+\@([-a-z0-9]+\.)+[a-z0-9] {2,4}\z/i
end
Дай мне знать, если больше информации необходимо, первый раз Рельсы пользователь, первый раз Stack Обмен плакат :)
У вас есть человек, спасибо! – Longhorns747