Paolo,

I think you've going in the right direction but i'd recommend a few changes
based on my experience. Translation Agency has different rates for each
language. and the rate per language for A -> B Is not the same as B -> A.
So its better to maintain the cost details in Another model unique for one
direction.

Language:
has_many :language_translations


LanguageTranslation
belongs_to :language
belongs_to :target_language, :class_name => "Language"

#An float/integer field for cost.

Also i dont think you have to specify foreign_key condition unless your
association name and foreignkeys are different..

eg blongs_to :car,  :class_name => "Vehicle", :foreign_key => "bus_id"

If you have car_id as the foreign key. then you can ignore mentioning it in
the model.

Cheers




On Sun, Sep 28, 2014 at 6:40 AM, Paolo Wang <[email protected]> wrote:

> Hi to all.
>
> I am working for a translation agency and I have the task to create an
> auto-estimate system and ordering/invoicing administration system. I am
> stuck on how to manage the language pairs.
> I created a Language model with the language name and a LanguagePair with
> a source language, a target language and a rate per words attributes. I
> tried with:
>
> LanguagePair
> belongs_to :source, :class_name => "Language", :foreign_key => "source_id"
> belongs_to :target, :class_name => "Language", :foreign_key => "target_id"
>
> and also by replacing the source and target in the LanguagePair with a
> string type and loading it with a Language.all.permutation(2).to_a and
> eliminate the need for nesting.
> In the end I will create a sort of cart and lineitem model and add the
> LanguagePair to the cart as a LineItem.
>
> Is there a "best" way to do this maybe with a Language self-referential
> model?
>
>
> thanks in advance
>
> --
> You received this message because you are subscribed to the Google Groups
> "Ruby on Rails: Talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/rubyonrails-talk/c214ccfe-bc9a-4e5a-85fe-003a325fa2f0%40googlegroups.com
> <https://groups.google.com/d/msgid/rubyonrails-talk/c214ccfe-bc9a-4e5a-85fe-003a325fa2f0%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/CAFKVRj9-TW7haqFzPBAqPsK1M5mWgJg5sUNaeHdR3%2B5CK6jN6w%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to