Мои проверки работали некоторое время, или я так думал.Теперь я возвращаюсь к ним через некоторое время, делая что-то еще, и я получаю ошибку выше.Я думаю, это означает, что я создаю нулевой объект с помощью метода .new, но я просто потерян.Казалось, что это проблема с созданием нового объекта контроллером, потому что даже если я # проверяю проверку, следующая проверка в дереве с другим атрибутом @thing вызывает ту же ошибку.Однако, даже если я создаю объект в консоли и проверяю его там, метод .save все равно выдает ошибку - неопределенный метод 'user_id' для nil: NilClass
ThingsController:
def create
@thing = Thing.new(params[:thing])
@thing.user_id = @currentuser_id
if @thing.save
flash[:notice] = "Successfully created thing."
redirect_to @thing
else
#flash[:notice] = "Your thing did not get created."
render 'otherthings/show'
end
end
Thing.rb
validate :user_valid
def user_valid
errors.add("you must be logged in to add a thing") unless @thing.user_id?
end
Я немного рубинна рельсах noob (то есть <8 недель) и это мой первый вопрос stackoverflow, так что будьте осторожны со мной, если это глупо очевидно.Я тоже попробовал params ["thing"], так как это работало в консоли после ручного создания params для соответствия файлам журнала (тогда как params [: thing] этого не произошло), но это ничего не меняет с точки зрения ошибкисообщение, которое я получаю. </p>