zoukankan      html  css  js  c++  java
  • rails 多态

    rails g model employee name:string

     

    rails g model product name:string

     

    rails g model picture name:string imageable_id:integer  imageable_type:string

     

     

     

    class Employee < ApplicationRecord
      has_many :pictures, :as => :imageable
    end

    class Product < ApplicationRecord
      has_many :pictures, :as => :imageable
    end

    class Picture < ApplicationRecord
      belongs_to :imageable, :polymorphic => true
    end

    irb(main):001:0> product = Product.create name: "iphone"

       (0.1ms)  begin transaction

      SQL (1.1ms)  INSERT INTO "products" ("name", "created_at", "updated_at") VALUES (?, ?, ?)  [["name", "iphone"], ["created_at", "2017-07-03 07:26:45.164785"], ["updated_at", "2017-07-03 07:26:45.164785"]]

       (0.7ms)  commit transaction

    => #<Product id: 1, name: "iphone", created_at: "2017-07-03 07:26:45", updated_at: "2017-07-03 07:26:45">

    irb(main):002:0> picture = product.pictures.create name: 'pic1'

       (0.1ms)  begin transaction

      Product Load (0.2ms)  SELECT  "products".* FROM "products" WHERE "products"."id" = ? LIMIT ?  [["id", 1], ["LIMIT", 1]]

      SQL (0.7ms)  INSERT INTO "pictures" ("name", "imageable_id", "imageable_type", "created_at", "updated_at") VALUES (?, ?, ?, ?, ?)  [["name", "pic1"], ["imageable_id", 1], ["imageable_type", "Product"], ["created_at", "2017-07-03 07:27:47.046831"], ["updated_at", "2017-07-03 07:27:47.046831"]]

       (0.7ms)  commit transaction

    => #<Picture id: 1, name: "pic1", imageable_id: 1, imageable_type: "Product", created_at: "2017-07-03 07:27:47", updated_at: "2017-07-03 07:27:47">

    irb(main):003:0> picture

    => #<Picture id: 1, name: "pic1", imageable_id: 1, imageable_type: "Product", created_at: "2017-07-03 07:27:47", updated_at: "2017-07-03 07:27:47">

  • 相关阅读:
    System.IO.StreamWriter
    C# XML
    C# 泛型
    ACM将一个十进制的数转换为一个十六进制的数输出
    ACM打扫花园问题
    ACM用N个正方体来建造金字塔问可以建造多少层
    输入一串数字找出其中缺少的最小的两个数
    高效算法——B 抄书 copying books,uva714
    暴力求解——POJ 3134Power Calculus
    暴力求解——打表,暴力
  • 原文地址:https://www.cnblogs.com/lizhenjiang/p/7111458.html
Copyright © 2011-2022 走看看