2012-04-25 16 views
0

のでHERESに私が何をしようとしています何: カスタム検索フィールド3形

は、私は、テキストベースのフィールドをしたい、「クーポンコード」、ネストされた形で

そこで、基本的f.text_field :coupon

しかし、その値がcouponsテーブルの項目との関係ではなく、idでなければなりません。

クーポンテーブルは

|ID| CouponCode | 
+--+------------+ 
|1 | a89sd9asda | 
+--+------------+ 

ようになり、私のメインテーブルは

|ID| OrderTitle | Coupon | 
+--+------------+------------+ 
|1 | sdfsdfsdfd | a89sd9asda | 
+--+------------+------------+ 

ようになりhas_oneのを経由してこれらの2をリンクし、非IDフィールドを使用するためのレールで方法はありますか?あなたの質問に答えるために

+0

クーポンの表にIDとコードしかない場合、なぜこの表があるのか​​わかりません。 OrderテーブルでCouponCodeを使用するだけです。 – damienbrz

+0

それはクーポンコードデータベースthoのクーポンの1つと一致する必要があります。クーポンは事前に生成され、配布されています。私は、1つの注文に1つのクーポンを持たせることができます。 –

答えて

1

class Order < ActiveRecord::Base 
    has_one :coupon_code, :foreign_key => 'CouponCode' 
end 

class CouponCode < ActiveRecord::Base 
    belongs_to :order, :foreign_key => 'CouponCode' 
end  

はしかし、私はダミアンに同意:これは一般的なDBの設計手法のオフビットを探します。

+0

私は次のように設定する必要があります:primary_key => "Coupon"?それはCoupon_idを使用しないためですか? –

関連する問題