dar*_*uby 17 ruby activemodel ruby-on-rails-3
我已经将我的database.yml配置为指向我现有的mysql数据库
我怎样才能从中生成模型?
rails generate model existing_table_name
Run Code Online (Sandbox Code Playgroud)
只提供一个emty模型..
Mar*_*mas 10
Rails模型不会显示您的字段,但您仍然可以使用它们.请尝试以下方法.假设您有一个名为ModelName的模型和一个名为"name"的字段,请启动Rails控制台并键入:
ModelName.find_by_name('foo')
Run Code Online (Sandbox Code Playgroud)
给定DB中存在的名称,您应该看到结果.
虽然Rails不会推断关系,但如果您的数据库遵循Rails约定,则可以轻松添加它们.
更新
我注意到这种特殊的缺乏显性("魔法")是Rails的新手混淆的根源.您可以随时查看schema.rb模型和所有字段.此外,如果您希望在模型文件中查看每个模型的模式,则可以使用annotate_models gem,它将db模式放在模型文件顶部的注释中.