I want to do @ad = Ad.attributes(params[:ad]) maybe Im wrong, but as I understood about polymorphic in rails, this would thow an error say that ad_real_estate_details does not exist
as they explained here http://stackoverflow.com/questions/3969025/accepts-nested-attributes-for-with-belongs-to-polymorphic Le mardi 29 janvier 2013 13:39:18 UTC+1, jim a écrit : > > > > > On Tue, Jan 29, 2013 at 7:41 PM, oto iashvili > <[email protected]<javascript:> > > wrote: > >> Hi, >> >> thanks for answer. My pb with polymorphic is that I would have to create >> first in db a ligne for ad_real_estate_details and then create my ad, what >> is non sense for me, in terms of logic. >> and it might brings some pb as I read there >> http://stackoverflow.com/questions/3969025/accepts-nested-attributes-for-with-belongs-to-polymorphic >> >> lets have another example which is almost the same >> >> image we have Student (age, classe, ...) and Teacher (subject_taught) >> classes that inherit from User classes. I would be non sense to create >> first a Teacher entity, and then to link it to User, no ? >> > > Why are you thinking of creating the details first? Why not create the ad > first, then add the details later? Sometimes, accepts_nested_attributes_for > is not always the answer for creating association records. Try to look > into virtual attributes > and callbacks. > > >> >> >> Le lundi 28 janvier 2013 01:10:30 UTC+1, jim a écrit : >>> >>> >>> >>> >>> On Mon, Jan 28, 2013 at 6:27 AM, oto iashvili <[email protected]>wrote: >>> >>>> hi, >>>> >>>> i' trying to re-create my project from php to rails. But now Im faced >>>> with a pb to witch I had solution with php, but I cant figure how to make >>>> it work with rails >>>> >>>> here my tables >>>> >>>> ads >>>> id >>>> category_id >>>> title >>>> text >>>> >>>> ad_real_estate_details >>>> id >>>> ad_id >>>> nb_room >>>> floor >>>> >>>> ad_car_details >>>> id >>>> ad_id >>>> color >>>> brand >>>> >>>> here what I succeed to do >>>> >>>> >>>> class Ad < ActiveRecord::Base >>>> attr_accessible :category_id :title, :text, :ad_real_estate_details >>>> has_one :ad_real_estate_details >>>> accepts_nested_attributes_for :ad_real_estate_details, allow_destroy: >>>> true >>>> end >>>> >>>> class AdRealEstateDetail < ActiveRecord::Base >>>> belongs_to :ad >>>> validates :ad_id, presence: true >>>> end >>>> >>>> but this only work for other category than real_estate >>>> >>>> so I was thinking of polymorphism, but polymorphism mean I should add a >>>> reference in my "ad" table to the detail tables, and remove annonce_id >>>> from >>>> detail tables , what I thing is non-sense as some ads can have no details, >>>> but details are non-sense without an ad. >>>> >>> >>> i think you have it right when you mentioned using polymorphic >>> associations. it is fine to leave the polymorphic association >>> nil if the ad has no details if that's what you're worried about. >>> >>> >>>> >>>> I was also thinking of a class AdDetails, and AdRealEstateDetail would >>>> inherite from it, but this is not possible with rails as all subclasses >>>> will share the same table >>>> >>>> does anyone have a solution for this kind of problem ? >>>> >>>> thanks >>>> >>>> -- >>>> 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 rubyonra...@googlegroups.**com. >>>> To unsubscribe from this group, send email to rubyonrails-ta...@** >>>> googlegroups.com. >>>> >>>> To view this discussion on the web visit https://groups.google.com/d/** >>>> msg/rubyonrails-talk/-/**GLpFbbHm0ogJ<https://groups.google.com/d/msg/rubyonrails-talk/-/GLpFbbHm0ogJ> >>>> . >>>> For more options, visit >>>> https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out> >>>> . >>>> >>>> >>>> >>> >>> >>> >>> -- >>> ------------------------------**------------------------------**- >>> visit my blog at http://jimlabs.heroku.com >>> >> -- >> 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 [email protected] <javascript:>. >> >> To post to this group, send email to >> [email protected]<javascript:> >> . >> To view this discussion on the web visit >> https://groups.google.com/d/msg/rubyonrails-talk/-/zT4pri8N4GUJ. >> >> For more options, visit https://groups.google.com/groups/opt_out. >> >> >> > > > > -- > ------------------------------------------------------------- > visit my blog at http://jimlabs.heroku.com > -- 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 [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msg/rubyonrails-talk/-/DT2QhvrfLpUJ. For more options, visit https://groups.google.com/groups/opt_out.

