Varis Darasirikul
Varis Darasirikul

Reputation: 4177

Cannot connect to the model by rails sitemap_generator gem?

I want to use this gem (sitemap_generator)

sitemap_generator

To create my sitemap xml file for my site.

So i create sitemap.rb inside config folder

Then i put this code inside

require 'rubygems'
require 'sitemap_generator'

SitemapGenerator::Sitemap.default_host = 'https://xxxx.com/'


SitemapGenerator::Sitemap.create do

  # add '/home', :changefreq => 'daily', :priority => 0.9
  # add '/contact_us', :changefreq => 'weekly'

  add '/'
  add '/signup'
  add '/login'

  Activity.find_each do |activity|

    add activity_show_path(activity.id), :lastmod => activity.created_at

  end

end

SitemapGenerator::Sitemap.ping_search_engines # Not needed if you use the rake tasks

But when i run

ruby config/sitemap.rb

I always got this

uninitialized constant Activity (NameError)

So how can i fixed this (I guess the problem from the model)

Thanks!

Upvotes: 1

Views: 199

Answers (1)

Lucas Nelson
Lucas Nelson

Reputation: 2551

I always run it through the rake task, try this:

rake sitemap:refresh:no_ping

It's possible the rake task does the magic to make the application code available when that's running.

Update: probably a duplicate of Rails sitemap_generator Uninitialized Constant? (sorry I should have looked first)

Upvotes: 1

Related Questions