Hi!
I'm designing a Rails app that imports data from external sources, and would really appreciate some suggestions on the best way to achieve the following:
Two models: Products & Categories, where the product details are imported from an external source on an ongoing basis, and have named categories that may not always match the categories listed in the Categories model, for example there might be a "widget" of external category "things", that needs to be in internal category "stuff". and another where the internal and external categories have the same name (more the latter than the former).
The external and internal category names stay constant for the most part (although each source will have some variation on the names), but the products constantly change. Some sources will have multiple categories that map to one category in the Category model, but probably not the reverse.
How would you model that relationship?
I've done it one way, which works, but isn't efficient either to maintain or from a SQL perspective, and have an idea for another way, but don't know enough about the knock on effects on Rails or SQL of one approach over another. Rather than list them here, I'm open to any and all suggestions & advice!
Many thanks, Matt.
Some additional context: There are maybe 70-100 categories per data- source, a hundred or so data sources initially, and unlimited products per data-source (which expire after a period of time).
At some point internal categories will need to be i18n'd (?! :-), and external categories could be in any language.