Avoid BY ALL MEANS any procedure that might complicate maintenance for you
both short term and long term.
I would advice you that you reconsider the approach. Rails has good
validation methods that will make your programming life sweet and fun. What
you are doing doesn't seem like fun to me. With Rails you can make tables
to validated each other also perform custom validations etc. However when
you say import are you importing records from an old built data-source?

On Tue, Oct 13, 2015 at 9:55 PM, David McDonald <daveo...@gmail.com> wrote:

> Yes, I agree I just didn't want to have to create an additional model for
> each of these models I would be importing and everything that would go with
> that.  I think what would likely work is I can create a table in between my
> application table and the table I'm importing data from.  On that table I
> could add a column that I can note records that are invalid.  Then I can
> create a new action on my controller that reads those to a view in which I
> can them send them to the model's _form.html.erb for the user to correct
> and attempt to save.
>
> On Tuesday, October 13, 2015 at 4:46:17 PM UTC-4, mode-x wrote:
>>
>> Generally speaking i think you should NOT just allow invalid records AT
>> ALL. For the record to be saved the user MUST ENSURE that the relevant
>> information are valid.
>>
>> On Tue, Oct 13, 2015 at 9:30 PM, David McDonald <dave...@gmail.com>
>> wrote:
>>
>>> I'm currently trying to setup daily processes that will import
>>> information into my database.  I have many records that fail validations,
>>> and for the most part I have methods that attempt to auto-correct them and
>>> re-save, but there are some more complex scenarios that require a user to
>>> correct some information before they're valid.  I'm trying to come up with
>>> a good way in which I can set this up and I've come up with two methods,
>>> but I'm not sure which I should really go with...
>>>
>>> *Scenario 1:*
>>>
>>> I figure I could import into my models like I normally do, and when they
>>> don't pass validations then I will go ahead and save them to the database
>>> anyways and then flag them with a boolean column as "invalid".  Then I'll
>>> setup an action and view to allow the user to see and correct all the
>>> records that have been flagged.
>>>
>>> *Pros:* The pro to this method is I don't have to create various new
>>> models/tables for each model that I'm importing into for temporary storage.
>>> *Cons:* I'm still storing bad data in the table, and also would have to
>>> alter many queries to filter out invalid records based on the boolean
>>> column I would add to the model.
>>>
>>> *Scenario 2:*
>>>
>>> I create new models that mimic the model that I want to import the
>>> records into... but then I'm adding alot of logic that is shared between
>>> the two -- not to mention I have a lot of additional files and code.
>>> However, this method wouldn't have me storing invalid data in my tables.
>>>
>>>
>>> Thoughts?
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Ruby on Rails: Talk" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to rubyonrails-ta...@googlegroups.com.
>>> To post to this group, send email to rubyonra...@googlegroups.com.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/rubyonrails-talk/41a66ff1-2a65-45cc-b6bb-09f7aa57bfa4%40googlegroups.com
>>> <https://groups.google.com/d/msgid/rubyonrails-talk/41a66ff1-2a65-45cc-b6bb-09f7aa57bfa4%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
> You received this message because you are subscribed to the Google Groups
> "Ruby on Rails: Talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to rubyonrails-talk+unsubscr...@googlegroups.com.
> To post to this group, send email to rubyonrails-talk@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/rubyonrails-talk/b69a71a6-1e81-4d11-b8be-3c146fd7e550%40googlegroups.com
> <https://groups.google.com/d/msgid/rubyonrails-talk/b69a71a6-1e81-4d11-b8be-3c146fd7e550%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/CAHewxcGxbnh9kSOEDsXAHv%2BaQS1bjiZFxKDevzYnxg%2BCSyiHVA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to