Итак, следуя учебным пособиям для примера Hartl и имея немного проблем с получением некоторых тестов в прошлом относительно спецификации отношений.Rails Sample_App, ошибки теста
в моем файле спецификации у меня есть
describe "follow methods" do
before(:each) do
@follower = User.create!(:name => "Example User",
:email => "[email protected]",
:password => "foobar",
:password_confirmation => "foobar"
)
@followed = User.create!(:name => "Example User",
:email => "[email protected]",
:password => "foobar",
:password_confirmation => "foobar"
)
@attr = { :followed_id => @followed.id }
@relationship = @follower.relationships.create!(@attr)
end
Я знаю, что это не то же самое, как и в книге, однако я не используя FactoryGirl.
При использовании этого блока для тестов я получаю сообщение об ошибке с моим @attr, который читает;
Failure/Error: @attr = { :followed_id => @followed.id }
NoMethodError:
undefined method `id' for #<Hash:0x00000108d0b2a0>
Однако, когда я запускаю этот блок на своей консоли, он работает нормально. Идентификатор установлен в соответствии с @attr, и я могу позвонить .id в @followed.
Любая помощь будет очень признательна, как всегда!
что произойдет, если вы используете '.create()' вместо '.create (!) ' – sircapsalot
Произошла такая же ошибка! – user2085143
попробуйте использовать '@followed ['id']' вместо '@ follow.id' – sircapsalot