#ruby-on-rails #ruby-on-rails-3
#ruby-on-rails #ruby-on-rails-3
Вопрос:
В главе 6 «Rails 3 в действии«, раздел 6.5.1, мы связали тикет с пользователем, используя:
@ticket = @project.tickets.build(params[:id].merge!(:user => current_user))
и у Ticket
модели есть эта директива: belongs_to :user
, тогда все это работает.
Но почему User
модели не нужно has_many :tickets
создавать ассоциацию «один ко многим» между пользователем и темой?
Ответ №1:
Вы уверены has_many
, что в пользовательской модели нет
@user.topics
определенно не будет работать, если у вас нет has_many :topics
набора в пользовательской модели.
Точно так @topic.user
же не будет работать, если вы не установили belongs_to :user
в теме model .
Комментарии:
1. да,
has_many :tickets
в пользовательской модели его нет, и я также проверяю источник, предоставленный the book press