Forum: Ruby on Rails should I use the validation framework (e.g. add_to_base) to pass back multiple data errors that are

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Greg H. (Guest)
on 2009-01-20 09:01
(Received via mailing list)
Hi,

I have an "automation" model with some config data.  When it runs it
looks
across other models and does some matching, however it also builds up a
list
of "duplicate data" type issues identified as part of the routine.

In terms of how I capture this array of duplicate data issues and pass
to a
view for display what would Rails best practice suggest? For example:
* use validation framework (e.g. add_to_base, and then the helper tags
to
display) even though the data is not associated with attributes in the
model
* extend an application_error Exception to include an Array
* just use an array to pass back to controller, which stores as an
instance
variable (@duplicates) and write custom code to display in view (i.e.
won't
use error/validation tags)

thanks


--
Greg
http://blog.gregnet.org/
Greg H. (Guest)
on 2009-01-21 03:10
(Received via mailing list)
(bump)

On Tue, Jan 20, 2009 at 5:00 PM, Greg H. <
removed_email_address@domain.invalid> wrote:

> * extend an application_error Exception to include an Array
>
>
>


--
Greg
http://blog.gregnet.org/
Brian H. (Guest)
on 2009-01-21 03:33
(Received via mailing list)
I don't necessarily see what's wrong with add_to_base.  Seems somewhat
logical to me but I don't really know what you're attempting to do :)

On Tue, Jan 20, 2009 at 7:09 PM, Greg H.
Greg H. (Guest)
on 2009-01-21 04:14
(Received via mailing list)
I suppose I was questioning whether from a best practice position
whether
using Rails input validation framework (focused at the model level), for
collecting non-severe error messages that cut across a whole controller
action (e.g. multiple models may be involved), and for which they are
not
focused at input validation but rather error that occuring during
processing, for the purpose of bundling these up and passing to a view
and
displaying?   hope this makes sense in terms of clarifying my Rails best
practice question.

On Wed, Jan 21, 2009 at 11:32 AM, Brian H. 
<removed_email_address@domain.invalid> wrote:

> >>
> >> a view for display what would Rails best practice suggest? For example:
> >>
> > Greg
> > http://blog.gregnet.org/
> >
> >
> >
> > >
> >
>
> >
>


--
Greg
http://blog.gregnet.org/
Brian H. (Guest)
on 2009-01-21 04:21
(Received via mailing list)
You could always go with the "business logic always goes in models"
rule, and the easy implementation is to do what you're doing.  Or you
could build a brand new model with its own errors collection to
encapsulate what it is you're doing (presenter pattern?).  I don't
think there's really a *best practice* for this... if you can justify
the use to yourself based on what business rules you're trying to
implement, that may be your best practice. :)

My rule is always that NOTHING goes in the controller.  A lot of times
I've done an after_validation callback and shoved stuff into the
errors.base before. Done stuff with cc processing that way too.

I'd love to hear from others on this too.

On Tue, Jan 20, 2009 at 8:13 PM, Greg H.
This topic is locked and can not be replied to.