【问题标题】:Getting started with the Friendly ORM开始使用友好的 ORM
【发布时间】:2010-12-29 06:19:03
【问题描述】:

我正在关注本教程:http://friendlyorm.com/

我正在使用 InstantRails 在本地运行 MySQL。为了运行 Ruby 和 Rails,我使用的是普通的 Windows 安装。

当我运行Friendly.create_tables! 时,我只返回一个空数组:=> [],并且在我的“friendly_development”数据库中没有创建任何表。

【问题讨论】:

    标签: ruby-on-rails schemaless


    【解决方案1】:

    这里是Friendly的作者。

    在调用 Friendly.create_tables 之前,您必须要求所有模型!否则,Friendly 无法知道存在哪些模型。在未来的修订版中,我会自动预加载您的所有模型。

    【讨论】:

    • 我该怎么做?需要“CamelCasedModelName”吗?
    • 需要'the_name_of_the_file_that_contains_my_model'
    【解决方案2】:

    我有一个 rake 任务,在一个叫 Sutto 的人的帮助下,它会加载你所有的模型,然后调用 Friendly.create_tables!并打印出所有涉及的表格。

    namespace :friends do
      desc "load in all the models and create the tables"
      task :create => :environment do
        puts "-----------------------------------------------"
        Dir[Rails.root.join("app", "models", "*.rb")].each { |f|File.basename(f, ".rb").classify.constantize }
        tables = Friendly.create_tables!
        tables.each do |table|
          puts "Table '#{table}'"
        end
        puts "-----------------------------------------------"
      end
    end
    
    rake friends:create
    

    【讨论】:

      【解决方案3】:

      这里没什么可说的。我的猜测是它找不到您在路径中创建的模型文件?

      【讨论】:

      • 我的模型名为 BlogPost,它位于 app/models/blog_post.rb 中。你用过友好吗?
      猜你喜欢
      • 2012-10-28
      • 1970-01-01
      • 2011-01-15
      • 1970-01-01
      • 2017-05-18
      • 1970-01-01
      • 1970-01-01
      • 2010-12-29
      • 2014-07-26
      相关资源
      最近更新 更多