0
我試圖在保存一個模型(停止)的同時保存到兩個關聯表(遊覽/停止,停止/場地)。旅遊has_many站點和站點屬於兩個關聯表..但因爲我在停止控制器,我似乎只能通過@ tour.stops.create保存,所以我手動做了一個創建..這是一種在rails中保存關聯的正確方法嗎?
這是我的從站控制器代碼
class StopsController < ApplicationController
def create
tour_id = params[:stop][:tour_id]
#check to make sure venue matches before saving
venue_name = params[:stop][:venue_name]
venue_id = Venue.find_by(name: venue_name).id
@tour = Tour.find(tour_id)
@stop = @tour.stops.create(strong_params)
#this seems like it might be ghetto
Stopsvenuesmembership.create!(venue_id: venue_id, stop_id: @stop.id)
當我加入這個我得到「未定義的方法'停止7:Fixnum對象」 – user3155441
@ user3155441這奇怪 - 我無法想象'.find_by_name'永遠會返回一個數字。是否有可能將'@ venue'設置爲一個id號碼而不是一個對象? – MrTheWalrus