On Mon, Dec 8, 2008 at 8:00 PM, minka
<beta-5eibb9424EpWk0Htik3J/w@public.gmane.org> wrote:
>
> I am leery of migrating my perfectly stable and fine production data
> base.
>
> But I need to add some customer info to my system.
>
> I am adding a new model backed by a database for the new customer
> info.
> Thus I''m assuming that I won''t need to migrate the old
database. The
> change is
> that there is a new database.
>
> However the existing production database will need a
'':has_one'' for
> the new
> database.
>
> This is the change I need to make to the production database of
> Orders.
> The new database will hold download links and passwords, for some
> orders, So I need the new database (Order_Download) to contain the
> above fields (download_link and password) plus the foreign key
> order_id, and the old database (Orders)
> will contain an '':has_one'' to associate it with
Order_Download.
>
> So I have:
>
> class Order < ActiveRecord::Base
> has_one: order_download // NEW, ADDING TO PRODUCTION DATABASE
>
>
> class OrderDownload < ActiveRecord::Base // new database
> belongs_to :order
>
> The question is, can I just add this and nothing will break, nothing
> needs
> migrating, everything is cool?
>
> Or am I changing the production database Orders with a new
'':has_one''
> which
> is going to require me to do something painful? Like migrate, yuck.
>
> Sorry I''m a database newbie and I''d rather not mess with
it.
>
I am still something of a newbie myself, but as I read the documentation (I
wish I could give you a better link than "http://api.rubyonrails.org/,
search for "belongs_to" 6 times), the model with the foreign key is
the one
that "belongs_to" the the model that "has_one" of the other
model. See the
section entitled "Is it a belongs_to or has_one association?"
Keeping in mind that I too am a newbie, I don''t think you will have to
touch
your existing database, (although you will want to modify your model with
the "has_one" attribute if you want to reach the corresponding entry
in the
new table.
Of course, you can (and should) copy your existing production database to
your development database and verify that none of your changes affect the
existing database.
hth...
--wpd
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---