Displaying records with static look up table source

Greetings All,

I hope you all understand what I am writing here. Lots of views involve
displaying date from static ‘look up’ tables: states, countries, type…

From all of the documentation I have read, the standard code conduct
seems
@look_up_object = LookUpModel.find .where. conditions => ids match

I pursued that structure, and for long listings, so many calls to
database
really bothered me.

So I re-wrote the code on look-up for my case static item_conditions,
containing only two field: conditions and item_conditions_id:

In the view I now have, following found parent records:

    <% @icond = Itemconditions.find(:all, :readonly) %>
    <% @ih = Hash.new %>
    <% @ih2 = Hash.new %>
    <% @ih = @icond.to_a.map(&:serializable_hash) %>
    <% for kv in @ih %>
      <% @ih2[kv.fetch("item_conditions_id")]  = 

kv.fetch(“conditions”)
%>
<% end %>

And then later for iterative record output I have in the view, ldr as
the
parent data source

<label class="item_listing">Condition:&nbsp;<%=

@ih2[ldr.item_condition_id.to_s] %>

Benchmarked this and vastly faster. Deployed it, no problems/errors. I
have researched Ruby and Ruby on Rails API. I have not found a simpler,
more native approach. Masters if you are aware of Ruby on Rails way,
please let me know.

Thanks,

Liz McGurty

displaying data

I would recommend you to remove this code in your view to a presenter
and
use AR include method to add a your relationships in the same query to
fetch from the database. It will avoid de n+1 issue.

2015-05-18 13:23 GMT-03:00 Elizabeth McGurty [email protected]:

parent data source

https://groups.google.com/d/msgid/rubyonrails-talk/daef460b-110c-4362-a2df-ef8e43aedf6c%40googlegroups.com

https://groups.google.com/d/msgid/rubyonrails-talk/daef460b-110c-4362-a2df-ef8e43aedf6c%40googlegroups.com?utm_medium=email&utm_source=footer

.

For more options, visit https://groups.google.com/d/optout.


thiagocifani
Thiago Cifani - Brazil, Software Developer | about.me http://del.icio.us/thiagocifani
http://del.icio.us/thiagocifani

Okay, Thiagocifani and others interested,

I have finally revised the structure of my application for plural table
names, which already existed, and singular model names. Across tables
I
have set up parent and foreign key with exactly the same field name and
data type. Within models I have defined belongs_to and has_many.

Now I am revisiting my views, in the case where the child value is a
single
value to the parent, the display is working fine. What I am finding
challenging is populating <select

The parent is advertiser, and the child is category…

Currently I have:

<label>Advertisement Category:</label>
<% @categories = Category.find(:all, :readonly => true, :order=>

“category_type”) %>
<% @cats = options_from_collection_for_select(@categories,
:category_id, :category_type) %>
<%= nf.select( :category_id, @cats) %>

How do I rewrite this? From the controller, how should I set up my data
source? Tried includes and Parent.child.find

Thanks,

Liz

Thank you, Thiagocifani! I was not aware of the include method. And,
by
the way, I visited your about.me page and it is very impressive.
Liz