In mijn applicatie heb ik users. Elke user kan een of meerdere 'userclasses' hebben (vb. Producer, Assembler). Nu is het zo dat bepaalde userclasses extra gegevens vereisen (zo moet een Producer bijvoorbeeld een veld hebben om wat hij producet automatisch door te sturen naar een Assembler). Ik dacht om dit te gaan maken als volgt:
- User class
- Producer class die inherit van User, met het extra veld erin
- CountryManager class die inherit van User met een extra veld in
Nu is het probleem dat een user zowel CountryManager als Producer kan zijn (of een andere combinatie van classes). Tot op heden is het niet mogelijk voor een variable om twee types tegelijk te zijn, dus daar loop ik tegen een probleem aan.
Een mogelijke oplossing die ik bedacht is om gewoon één User class te maken met alle fields, en de fields die niet van toepassing zijn gewoon null te laten (staat nu ook zo in de database overigens). Maar gevoelsmatig lijkt mij dat niet zo'n mooie oplossing.
Is mijn gevoel verkeerd en is dat wel een mooie oplossing of heb ik het bij het rechte eind en kunnen jullie een betere oplossing aandragen? Alvast bedankt
N.B.: ik programmeer in PHP, maar dit zou niet mogen uitmaken vermoed ik
- User class
- Producer class die inherit van User, met het extra veld erin
- CountryManager class die inherit van User met een extra veld in
Nu is het probleem dat een user zowel CountryManager als Producer kan zijn (of een andere combinatie van classes). Tot op heden is het niet mogelijk voor een variable om twee types tegelijk te zijn, dus daar loop ik tegen een probleem aan.
Een mogelijke oplossing die ik bedacht is om gewoon één User class te maken met alle fields, en de fields die niet van toepassing zijn gewoon null te laten (staat nu ook zo in de database overigens). Maar gevoelsmatig lijkt mij dat niet zo'n mooie oplossing.
Is mijn gevoel verkeerd en is dat wel een mooie oplossing of heb ik het bij het rechte eind en kunnen jullie een betere oplossing aandragen? Alvast bedankt
N.B.: ik programmeer in PHP, maar dit zou niet mogen uitmaken vermoed ik
If you can't beat them, try harder