Factory не будет устанавливать пароль и password_confirmation

#ruby-on-rails #factory-bot

#ruby-on-rails #завод-бот

Вопрос:

Мой User.rb имеет:

 attr_accessor :password, :password_confirmation
attr_accessible :password, :password_confirmation
  

Моя factory_girl для пользователя:

 Factory.define :user do |u|

  u.password "my_password"
  u.password_confirmation "my_password"

end
  

Мой User.rb устанавливает поле encrypted_password при сохранении объекта.

Кажется, что значения, которые я установил на своей фабрике (пароли), вообще не устанавливаются.

В моих тестах я должен делать:

 it "should ...." do
  user = Factory(:user)

  user.password = "abc123"

end
  

Почему это должно быть так?

У меня есть атрибут password как средство доступа, так и доступный.

Что-то конфликтует?

Комментарии:

1. Используете ли вы какой-либо драгоценный камень аутентификации или код?

2. теперь нет ничего, что могло бы противоречить… (это мой собственный обычай)

Ответ №1:

Я полагаю, проблема с вышесказанным заключается в том, что эти attr_accessor поля не сохраняются в базе данных, поэтому они «теряются» при объявлении в factories.rb . Решение для этого — установить их явно при создании нового объекта из factory:

 user = Factory(:user, :password => '123')
  

Также смотрите: