我有一個名爲Schedule的模型,屬於一個項目。一個項目有一個計劃。我試圖遵循CRUD約定,但有一些困難。我有一個列出所有項目的頁面,並在每個項目旁邊有一個鏈接來創建一個時間表。我開始在我的路由文件中使用以下內容:軌道路線與:id不工作
這是問題所在。在「新時間表」頁面的網址中,需要有一個:表示該時間表所屬的項目的id,這樣,創建時間表時,它將屬於正確的項目。我不知道的方式來做到這一點與資源,所以我改變了我的路線代碼:
match 'schedules/new/:id', to: 'schedules#new', as: :new_schedule, via: [:get, :post]
resources :schedules, except: [:new, :create]
出於某種原因,這個頁面是空白的。它只是白色的。我如何修復我的路線?謝謝。
UPDATE:
我也試圖改變我的路線如下:
resources :projects do
resources :schedules
end
這使得網址新日程表的形式:
/projects/:project_id/schedules/new(.:format)
我覺得這是應該如何完成的,但是,新時間表的形式寫爲
form_for @schedule
,併產生以下錯誤:
undefined method `schedules_path'
任何想法?
謝謝。這幾乎解決了它。但由於某些原因,它不會保存。當我提交表單時,它給了我下面的錯誤:'不能寫未知屬性'schedule_id''。 – Philip7899
這是什麼錯誤?請更新您的問題以包含您的控制器代碼/堆棧跟蹤。 – zeantsoi
一些我在堆棧溢出時收到的最快最好的建議。萬分感謝! – Philip7899