Ruby on rails rails 3迁移如何使用my ApplicationHelper和WidgetsHelper中的方法?

Ruby on rails rails 3迁移如何使用my ApplicationHelper和WidgetsHelper中的方法?,ruby-on-rails,migration,Ruby On Rails,Migration,我创建了一个迁移来重新格式化数据库中的一些内容(在我的存储记录中添加了一个友好的链接,格式为“我的名字城市状态”),但是rake db:migrate失败并显示 undefined method `make_friendly_link' for #<ActiveRecord::ConnectionAdapters::SQLite3Adapter:0x3f90f30> 未定义的方法“使链接友好”# 当我的迁移尝试访问我的StoresHelper中的方法make_-friendly_

我创建了一个迁移来重新格式化数据库中的一些内容(在我的存储记录中添加了一个友好的链接,格式为“我的名字城市状态”),但是
rake db:migrate
失败并显示

undefined method `make_friendly_link' for #<ActiveRecord::ConnectionAdapters::SQLite3Adapter:0x3f90f30>
未定义的方法“使链接友好”#
当我的迁移尝试访问我的StoresHelper中的方法make_-friendly_链接时

我尝试显式地包括ApplicationHelper和StoresHelper,但仍然失败

我的迁移是:

class FriendlyLinkForEveryone < ActiveRecord::Migration
  include ModelHelper
  include ApplicationHelper
  include StoresHelper

  def self.up
    Store.find(:all).each do |store|
      puts "STORE: #{store.name} #{store.city} #{store.state}"
      if store.friendly_link.blank?
        store.update_attributes :friendly_link => make_friendly_link(store.name, store.city, store.state) 
      end
    end
  end

  def self.down
  end
end
class-FriendlyLinkForEveryonemake\u friendly\u link(store.name、store.city、store.state)
结束
结束
结束
def自动关闭
结束
结束

make_-friendly_-link方法在我的stores_-helper.rb中,它调用我的应用程序中的一个方法_-helper.rb

一种黑客行为,但您可以执行以下操作:

v = ActionView::Base.new
v.make_friendly_link(store.name, store.city, store.state)

有点像黑客,但你可以做到:

v = ActionView::Base.new
v.make_friendly_link(store.name, store.city, store.state)

非常棒,谢谢!将测试出来,然后用accept发回。非常棒,谢谢!将测试并使用accept发回。