rails中模型的关联关系 一对一、一对多、多对多及named_scope

1、1对1关系的实现  book与user

model

 

book.rb

      belongs_to:user

 

 

user.rb

       has_one :book         #体现两者之间的1对1关系

 

db/migrate

book.rb

  def self.up

    create_table :books do |t|

      t.integer :user_id     #存储 user的 id,

      t.string :title

      t.string :author

      t.timestamps

    end

  end

 

user.rb

  def self.up

    create_table :users do |t|

      t.string :name

      t.timestamps

    end

  end

 

例:

u= User.new

u.id= 2

u.save

 

b=Book.last

u.book= b

 

此时,b.user_id = 2

 

2、 单表继承   admin单表继承user

model层

admin.rb

classAdmin < User

  def im

    p "i am an admin"

  end

end

 

user.rb

classUser < ActiveRecord::Base

  def im

    p "i am an user"

  end 

end

 

db/migrate层

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值