在我的Rails應用程序中,我有一個Movies表和一個流派表。流派需要有一個特定的:id
,以便電影和流派之間的關聯可以正常工作。我無法更改流派ID。Rails ID給出404
前段時間我創造了鐵軌控制檯中的所有流派這樣
g = Genre.new
g.name = "Action"
g.id = 23
g.save!
g = Genre.new
g.name = "Comedy"
g.id = 1034
g.save!
這種保存和創建的類型和給定的工作:ID,所以如果我去/流派/ 23 它會帶我去看行動流派。
在啓動之前,我重置整個數據庫並重新創建流派。
但是,如果我現在運行
g = Genre.new
g.name = "Comedy"
g.id = 1034
g.save!
我得到一個404錯誤,當我嘗試去/流派/ 1034,但如果我去流派/索引頁,仍然被列爲喜劇。
如果我沒有指定id創建流派,我不會收到錯誤。
我已經復位類型表,我用this gem但我仍然獲得了404就好像是PostgreSQL只記住IDS 1034
和23
如果我嘗試再次使用它們,它提供了404
任何人都有解決方案?如何創建流派與以前使用和銷燬的ID
Genre.rb
class Genre < ActiveRecord::Base
attr_accessible :name
has_many :movies
end
類型#顯示
def show
@genre = Genre.find(params[:id])
end
您可以添加堆棧跟蹤或從404錯誤日誌輸出?我試圖瞭解導致404發生的Genre.find。 –
現在令我困惑的事情是,當我進入404頁面然後運行日誌時,它說它無法用'id 13'找到一部電影。當我去看電影/ 13它給了我另一個404。我現在確定電影id 13從未創建。 PLus很奇怪,它給了我一個類型頁面上的404,因爲它無法找到一部電影,它不應該給我一個500? – PMP
發佈你的控制器動作流派#表演,也許? –