Это, вероятно, базовые вещи, но я действительно сделал свою домашнюю работу, глядя на нее. Я до сих пор не могу найти решение.Многие для многих базы данных
У меня есть пользователи db, db фильмов и рейтинги db. Рейтинги имеют movie_id, user_id и оценку.
Но я не могу создать рейтинг как с movie_id и user_id
rails c test
Loading test environment (Rails 3.0.3)
@movie=Factory(:movie)
#<Movie id: 1, title: "Rocky 20", link: "#", created_at: "2011-01-22 21:04:42", updated_at: "2011-01-22 21:04:42">
@user=Factory(:user)
#<User id: 1, name: "lola", email: "[email protected]", created_at: "2011-01-22 21:04:48", updated_at: "2011-01-22 21:04:48", encrypted_password: "c306a696138fa08c543ada3a3b4fd92067e9941743b7558e891...", salt: "f82c6abaccec17e2866d50150ad200181eb4bc8e0204249f171...", admin: false>
>> @user.ratings.create(:grade=> 4, :movie_id =>@movie.id)
=> #<Rating id: 1, grade: 4, user_id: nil, movie_id: nil, created_at: "2011-01-22 21:04:55", updated_at: "2011-01-22 21:04:55">
, что "movie_id: ноль" является то, что убивает меня ...
тогда конечно меня тесты не проходят: @ user.rating.create (grade => 5,: movie_id => @ movie.id) не имеет movie_id @ movie.rating.create (grade => 5,: user_id => @ user.id) не имеет user_id
Подсказки?
Спасибо!
спасибо за попытку! Я узнал, что использовал «attr_accessible: grade», но если я это сделаю, я не могу назначить параметр movie_id. Есть ли способ ограничить массовые задания и в то же время каким-то образом вставить информацию? – brunosan