Hello, I need to change/adapt of the date and float numbers the user enters: dd/mm/yyyy I have to change into yyyy-mm-dd and numbers, replace the , with the . 1245,85 => 1245.85 I thought the best place was using the before_validation() but here the objects come with standard Rails formats, and the date is wrong, and the numbers are also wrong. Now I''m doing all the stuff in the Controller: def update @transaction=Transaction.find(params[:id]) if @transaction.update_attributes(params[:transaction]) @transaction.data=convert_european_date(@transaction.data.to_s) @transaction.amount = params[:transaction][:amount].to_s.gsub('','', ''.'').to_f end ... But this is a pain If I have to duplicate code for new and update controllers method. So I tried to move the code into the model before_validation but there the self.data and self.amount are wrong, as Rails adapt them to what they think it''s the standard way ... In the controller I can get the fresh value from params, but in the model it doesn''t exist ... what''s the best solution to my problem ? thanks! r. -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
since this problem is closely linked to your user''s entries, you gotta solve it in your view or controller. to not repeat yourself too much you could add a helper-method for that piece of code you are using to set your records straight. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
MaD wrote:> since this problem is closely linked to your user''s entries, you gotta > solve it in your view or controller. to not repeat yourself too much > you could add a helper-method for that piece of code you are using to > set your records straight.yes and no, this problem is the same for lots of users that doesn''t follow the US format number and dates ... I''m using the helpers for displaying the records, but I can''t use them in the controller, so I created two methods in the Application Controller, at least it''s working but not the way Rails is proposing ... thanks! r. -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
well, helpers are really meant for helping with displaying your data. thats right. i actually didn''t mean to write a helper-method, but a method (in your controller) to help you with setting your records. my fault (got lost in translating my thoughts). i think your aproach of putting it into application-controller is a good one (as long as you really need that method in more than one controller). --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
MaD wrote:> well, helpers are really meant for helping with displaying your data. > thats right. i actually didn''t mean to write a helper-method, but a > method (in your controller) to help you with setting your records. my > fault (got lost in translating my thoughts). > i think your aproach of putting it into application-controller is a > good one (as long as you really need that method in more than one > controller).yes, you''re right: helpers are for help no matter where they help ... :-) r. -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Peter Vandenabeele
2009-Mar-04 10:42 UTC
Re: change date and numbers format, before_validation()
On Wed, Mar 4, 2009 at 9:39 AM, MaD <mayer.dominik-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> well, helpers are really meant for helping with displaying your data. > thats right. i actually didn''t mean to write a helper-method, but a > method (in your controller) to help you with setting your records. my > fault (got lost in translating my thoughts). > i think your aproach of putting it into application-controller is a > good one (as long as you really need that method in more than one > controller).One question I have for some time now is: What is the idiomatic place in the directory tree for positioning such "controller_helpers" ? ../app/helpers/ is really for view helpers. Of course, they could go in ../app/controllers/application.rb but then, that is inherited by _all_ controllers. We now put some "controller-helpers" in modules under /lib/ and then include those modules selectively in controllers. Or should we use sub classes for everything, but I read that is not the "Rails-way" either. Would it make sense to have default locations for "controller_helpers". Maybe something along the lines of: /app/view_helpers /app/controller_helpers /app/helpers --> /app/view_helpers The concept of helper :all (that we actually use now in ../app/controllers/application.rb) also seems broken as this is unclean mixing of view and controller helpers. How should I do this in a clean fashion ? Thanks, Peter --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
well, you could always create a helper with an arbitrary name and include them in your controller. that way helpers are all huddled together in one folder, but that special controller_helper gets only included in controller that depend on it. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---