mift99
(mift99)
April 9, 2009, 11:49am
1
Hi,
i am wondering about the MVC pattern, I havent worked with that for a
long time and before I break it I would like to ask your advice...
if I have a birthday calender visible in nearly every view where would
I put the controller? I was thinking about putting the method it into
application controller.. but how do you call that from the view?
Thanks,
Philipp
Dr_Gavin1
(Dr_Gavin)
April 9, 2009, 12:08pm
2
could you explain the birthday calendar method a little better?
mift99
(mift99)
April 9, 2009, 5:56pm
3
Thanks,
so the solution is, just for everyone else facing the same proplems,
(at least I hope):
Write a helper method
def birthday_helper (number_of_resutls)
costumers_with_upcoming_birhtday = Costumer.find_near_birthday
costumers_with_upcoming_birhtday= costumers_with_upcoming_birhtday
[0..number_of_resutls]
end
and then call it from the view
<% birthday_helper(10).each do |costumer| %>
<tr>
<td><%=link_to costumer.last_name, costumer %></td>
<td><%=link_to costumer.birthday, costumer %></td>
<br />
</tr>
<% end %>
Thanks for the help!
You might take note that there are a lot of misspellings of "birthday" (birhtday), so this code won't run, but you've probably already noticed that.
Also, why not make use of a named scope with a parameter instead of a helper? Such as:
class Customer
named_scope :upcoming_birthdays, lambda { |number_of_results|
{
:conditions => { ['your conditions for nearing birthdays'] },
:limit => number_of_results
}
}
end
Then in any controller, view or runner you could do Customer.upcoming_birthdays(10)
-Kevin
mift99
(mift99)
April 10, 2009, 11:56am
5
Hi,
I did end up making a named scope. This feature is really nice!
Thanks guys, really helped me a lot!