I'm actually doing something like this right now. My example is a lot
more complex because there need to be various depths and not every
attribute is in fact an attribute, but some are a set of options, but
basically I can point you in the right direction:
Your catalog consists of products, so you'll have a model Product.
They will have attributes, so you'll have a model ProductAttribute.
Then you'll need a table that links them together. Name it anything
you'd like, I chose ProductDefinition. Then, in the corresponding
models do:
class Product < ActiveRecord::Base
has_many :product_definitions
has_many :product_attributes, :through => :product_definitions
end
class ProductAttribute < ActiveRecord::Base
has_many :product_definitions
has_many :products, :through => :product_definitons
end
class ProductDefinition < ActiveRecord::Base
belongs_to :product
belongs_to :product_attribute
end
Now you can use eager loading to define a product:
@product = Product.find(:first)
And do @product.attributes to get all the product's attributes.
Hope this helps!
Kind regards,
Jaap Haagmans
w. http://www.relywebsolutions.nl
On 11 aug, 11:43, insect <[email protected]> wrote:
> Hello!
>
> I am looking for a plugin or at least the way how to realize dynamic
> fields in a model.
>
> Why I need: I want to create a product catalog application, each type
> of product can have different set of fields (e.g. computer, mobile
> phone, vacume cleaner and etc.).
> Requirements:
> 1. Set of fields with types can be defined from admin panel foreach
> product type
> 2. Validation should be presented
> 3. It should be possible to sort and filter on this fields
> 4. It should be possible to auto-generate forms for products
>
> All plugins that i found does not give me this functionality.
>
> Who can advise me something or point to a plugin?
--~--~---------~--~----~------------~-------~--~----~
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 [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---