1

次のスクリプトがあり、データベースを自動的に更新します。

require 'feedzirra'
require 'sanitize'

namespace :db do

  task :update_pitzer => :environment do

    feed = Feedzirra::Feed.fetch_and_parse('http://www.cafebonappetit.com/rss/menu/219')

    feed.entries.each do |entry|
      date = Sanitize::clean(entry.title)
      summary = Sanitize::clean(entry.summary)
      summary.gsub!(/\s{2}/, " ").to_s
      summary.gsub!(/\s{2}/, "").to_s
      summary.gsub!("&", "&")
      puts "#{date}"

      theDay = Day.create(date: date)
      #theDay.collins_meals.create()

      array = summary.split(/\[/)
      array.collect! {|x| "[" + x}
      array.reject! {|x| x == "[ "}
      array.to_s
      puts array
    end
  end
end

コマンドラインでrakedb:update_pitzerを実行すると、次のようになります。

   (in /Users/Alex/rails_projects/dining_hall_api)
   rake aborted!
   Don't know how to build task 'db:update_pitzer'

考え?

4

1 に答える 1

0

コードは適切なようです。Railsアプリケーションの「lib/tasks」フォルダーの下に「update_pitzer.rb」ファイルが配置されていることを確認してください

于 2012-04-30T10:31:09.183 に答える