2011-10-06 77 views
1

In rails在設置用戶時設計了一個用戶,然後刪除他,然後重新創建一個奇怪的效果。 像這樣,凱文...(刪除)...重新創建凱文然後新的網址是凱文-2(如果我再次這樣做是凱文--3。讓它停止Rails Devise Url

+0

你需要更強大的問題描述。請提供相關的代碼示例。 –

+0

我同意萊斯特..你在問問題時需要更精確......什麼是問題的URL? – Tilo

+0

我認爲這些用戶並沒有真正被刪除,而是被諸如acts_as_paranoid之類的某種系統保存。永久鏈接由另一個庫生成,使它們在每個用戶創建時都是唯一的。 –

回答

3

如果你創建一個用戶在Rails應用程序中,然後刪除用戶,那麼刪除用戶後,該用戶在數據庫中的ID將不可用。

例如,您從一個空系統開始,在用戶表中沒有條目。 ..

100.times do |i| 
    u = User.create(:name => "Kevin")  
    puts "User ID: #{u.id}" 
    u.delete 
end 

你將看到的是,從1..100 ID用於 - 每個新用戶條目(如果不管名稱是一樣的!),將有連續升高的我D,例如數據庫中下一個可用的未使用ID。 你會看到這個ID當然是寧靜URL的一部分。

如果您運行上述代碼兩次,您將看到它將在第二次使用ID 101..200。

所以你看到的是正常的Rails行爲。

+1

聽起來好像它不是沿着/ user /:id,/ user/2等行的東西,但更像/:username - :id ...無論如何,不​​可能弄清楚他在說什麼關於沒有他提供某種正在生成的URL的示例(複製/粘貼)。 –