1
我有2個型號,User
和Queue
。我希望能夠將@user.id
添加到users_controller
內的隊列表中。Rails 4:從其他控制器創建記錄
我的車型有:
class Queue < ActiveRecord::Base
has_many :users
end
class User < ActiveRecord::Base
belongs_to :queue
end
和我users_controller
功能是:
def addToQueue
queue_entry = Queue.new(user_id: @user.id) # where things go wrong
if queue_entry.save
redirect_to user_path(@user), notice: "#{@user.name} has been successfully added to the queue."
else
redirect_to user_path(@user), :flash => {:error => "Error: #{@user.name} was NOT added to the queue."}
end
end
我在show.html.erb
視圖中的鏈接此功能的user
爲:<%= link_to 'Add to queue', addToQueue_path(@user) %>
出於某種原因,我不斷收到:wrong number of arguments (1 for 0)
指向該行queue_entry = Queue.new(user_id: @user.id)
我應該怎麼做?
嗯,這似乎非常直觀,因爲隊列將基本上是隊列來容納選擇用戶。換句話說,我希望我的隊列表由選擇的用戶ID組成。還有另一種方法可以做到嗎? –
正確,這意味着一個隊列可以讓很多用戶正確嗎? – Cyzanfar
是的,那是我的意思 –