2014-08-27 114 views
0

我试图制作一个动态站点地图,我可以在每次需要时使用rake任务进行更新,因为我的站点是一个不断变化的社交网络。如何为站点创建新资源

为此,我使用了一个叫做sitemap_generator的gem,它似乎很容易使用。

在sitemap.rb文件,你需要添加你的资源,它说:

# Add all articles: 
    # 
    # Article.find_each do |article| 
    #  add article_path(article), :lastmod => article.updated_at 
    # end 

我使用嵌套的资源,所以我的照片的路径是user_photo_path,和我想要添加的每资源是这样的:

Photo.find_each do |photo| 
    add user_photo_path(photo[:user_id, :id]), :lastmod => photo.updated_at 
    end 

它不工作,它会给出一个错误:

wrong number of arguments (2 for 1) 

任何想法浩我应该添加这个吗?

非常感谢

回答

0

的问题是在这里:

photo[:user_id, :id] 

你的意思是:

photo[:user_id], photo[:id] 

吧?如果不是,user_photo_path预计会是什么?

+0

我试试这个...... – Gibson 2014-08-27 16:04:59

+0

顺便输入'photo.user_id'和'photo.id'更快。 ActiveRecord为您提供了一些不错的访问器。 – 2014-08-27 16:15:47

+0

完美的答案,仍然不明白事情是如何预期的。有时(:user_id,:id),有时(@ user.photo.id,@ photo.id)... :( – Gibson 2014-08-27 16:19:00