i tried to search and see if there is a way to find those reflections and to alter it in runtime.
Model.reflections
i found this collection which contains all the information about the current model reflections.
for example.
- .macro: this will return the type of the current reflection (:has_many, etc..)
- .primary_key_name: the reflection primary key
- .options: the reflection SQL join options
- etc. etc.
for example, the following code will show me all the reflections for a model named Article:
- >> y Article.reflections.values.collect {|e| e.macro.to_s + " => " + e.primary_key_name.to_s }
- ---
- - has_many => taggee_id
- - belongs_to => layout_id
- - has_many => article_id
- - has_one => subject_id
- - belongs_to => user_id
- - has_many => taggee_id
- => nil
Hi Elad,
ReplyDeleteI'm Rami from Israel.
Nice to see some more Israeli RoR programmers.
In which way ware you using the reflections?
Thanks!
Hi rami,
ReplyDeletei use the reflections every day and in any project, why not?
if you have anymore question, send me a mail