关闭

RoR ORM

216人阅读 评论(0) 收藏 举报
分类:

本文参考:
http://guides.rubyonrails.org/
http://guides.rubyonrails.org/v3.2.21/migrations.html                         

1、Model到数据库中的表

1/1 修改数据库配置文件

config/database.yml

development:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  database: ror-test
  pool: 5
  username: root
  password: 123456
  host: 0.0.0.0

1/2 生成模型代码

 rails generate model teacher name:string age:string sex:string t_id:string

 rails generate model student name:string age:string sex:string s_id:string

如果提示错误

/var/lib/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/connection_adapters/connection_specification.rb:176:in `rescue in spec': Specified 'mysql2' for database adapter, but the
 gem is not loaded. Add `gem 'mysql2'` to your Gemfile (and ensure its version is at the minimum required by ActiveRecord). (Gem::LoadError)

解决

在Gemfile文件中找到

gem 'sqlite3'

将其替换成

gem 'mysql2'

然后运行

bundle install

1/3 执行数据库变更

rails db:migrate

此时数据库内就会产生两张表



1/4 创建Controller验证 

rails generate controller db_test test_model_to_db

执行完成之后在路由表config/routes.rb里面会增加一行路由

get 'db_test/test_model_to_db'

db_test表示我们的Controller是db_test(对应代码是app/controllers/db_test_controller.rb)

test_model_to_db表示我们的action(响应方法)名是test_model_to_db

例如

  def test_model_to_db
    student=Student.find(1)
    render :text => "#{request.GET}=>#{student.name}"
  end

结果

{}=>111






0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:106032次
    • 积分:3103
    • 等级:
    • 排名:第11824名
    • 原创:203篇
    • 转载:43篇
    • 译文:1篇
    • 评论:11条
    最新评论