我剛剛使用Ruby on Rails 3.1,並且我想使用mongoid和mongoid_slug gem使我的url可讀。有我的問題: 在我的照片模式iput此代碼:「include Mongoid :: Document」,「include Mongoid :: Slug」和 「slug:title」(標題是照片的屬性之一) 而在我的控制器中,我在我的動作中打電話給我: 「@photo = Photo.find_by_slug(params [:id])」但是這段代碼總是返回一個空值! 請幫幫我!find_by_slug(params [:id])總是返回null
0
A
回答
3
我找到了我自己的答案,不過謝謝你!它總是返回空值,因爲模型不會加載slug(這意味着模型的每個對象都沒有「slug:title」)。因此,我必須初始化我的模型。我在我的db.rake文件中寫入以下代碼並運行rake db:init_slug。這是我的init_slug任務:「photo.all.each do | p | p.send(:generate_slug!)p.save!」然後再次重新啓動服務器,並且代碼不再返回空值
相關問題
- 1. MVC4 RouteConfig PARAMS返回NULL
- 2. Params返回爲NULL「有時」
- 3. ExecuteScalar()總是返回NULL
- 4. getIntent()。getStringArrayExtra()總是返回null
- 5. 函數總是返回null
- 6. myParser.getText總是返回null
- 7. Jsoup總是返回null
- 8. Configuration.GetSection總是返回null
- 9. getLastNonConfigurationInstance總是返回null
- 10. java.sql.Connection createArrayOf()總是返回null
- 11. GridView DataSource總是返回null
- 12. getActionView()總是返回null
- 13. Android:holder.getSurface()總是返回null
- 14. XPathSelectElement總是返回null
- 15. DateField selectedDate總是返回null
- 16. HttpPostedFileBase總是返回null
- 17. Android getActiveNetwork總是返回null
- 18. ajax php總是返回null
- 19. FindByEmailAsync()總是返回null
- 20. Registry.GetValue總是返回null
- 21. Xamarin.Forms FindByName()總是返回null
- 22. HIdDevice.fromIdAsync總是返回null
- 23. CLI:getOptionValue總是返回'null'
- 24. getLastKnownLocations總是返回null
- 25. cvCreateFileCapture總是返回「NULL」
- 26. NotesRichTextItem.getMIMEEntity()總是返回null
- 27. LocationProvider.getInstance()總是返回null
- 28. SelectSingleNode總是返回null?
- 29. ZipEntry getEntry()總是返回null
- 30. GetAssetPreview總是返回null
我認爲我的路線沒問題!因爲如果我使用舊代碼:「@photo = Photo.find(params [:id])它仍然有效! –
不!我的意思是說我想要一個可讀的鏈接,如/ photo/a-cockroach而不是/照片/ sadfasf12312。當我在我的控制器中調用find(params [:id])時,URL是/ photo/_id !!其實,我不想讓_id在andress中顯示,我只想要photo.title(這是slu))在地址! 對不起,因爲我很新ror T__T !! –
這是我的路線:match'/ artwork /:id'=>「pages#artwork」,:as =>「artwork」。在我的藝術作品中調用:Photo.find(params [:id]),我不認爲這裏有問題! –