I have a two generic models in my app: ProductAttributes and ProductAttributesValue (besides Product and ProductCategory, which are not relevant for this discussion).
These two models contain respectively all the different attributes and their values. For example, "brand" as an Attribute, and "nike" and "addidas" as its Attribute Values.
I'm running into an issue with this setup, though, as I want to create a page for each brand. I think this would be easier, if brands did not share model with other attributes, like color, size etc., which I do not want to create unique pages for. There may also be other scenarios.
In general, what's the pros and cons of having a unique model for each Product Attribute, versus having a shared model?
Note: I want to still be able to have long URLs that contain one category and several attribute values, like domain.com/shoes/red/nike