簡體   English   中英

我無法理解的ActiveRecord中的rails選擇

[英]rails select in activerecord I can not understand

我該如何選擇:“選擇日期,觸發器ID,嚴重性,狀態,types.name,收件人從日志,類型WHERE logs.type_id = types.id;”? 我有talble日志,其中“ type_id”列包含(1,2,2,3,3,1 ...),我需要將sql選擇為:(email,sms,sms,voice,voice,email ... ),其中“類型”表包含id(1,2,3),name(電子郵件,sms,語音)

遷移:

   create_table :logs, id: false do |t|
  t.integer         :date,          unsigned: true
  t.integer         :triggerid,     unsigned: true
  t.integer         :severity,      unsigned: true
  t.integer         :status,        unsigned: true
  t.integer         :type_id,       unsigned: true
  t.string          :recipient,     limit: 100

   create_table :types do |t|
  t.string      :name,      limit: 7
end

1.遷移:

1.1。 日志表

    class CreateLogs < ActiveRecord::Migration

      def change
        create_table   :logs do |t|
          t.integer         :date,          unsigned: true
          t.integer         :triggerid,     unsigned: true
          t.integer         :severity,      unsigned: true
          t.integer         :status,        unsigned: true
          t.integer         :type_id,       unsigned: true
          t.string          :recipient,     limit: 100
          t.references      :type
          t.timestamps
        end
      end
   end

類型表:

class CreateTypes < ActiveRecord::Migration

  def change
    create_table   :types do |t|
      t.string      :name,      limit: 7

      t.timestamps
    end
  end
end

1.3。 rake db:migrate

2.型號:

class Log < ActiveRecord::Base
  belongs_to :type 
end

class Type < ActiveRecord::Base
  has_many :logs #or has_one, I don't know your app logic
end

現在,您可以通過“ type_id”選擇日志的實例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM