Я пытаюсь разработать веб-приложение, но я не могу придумать полный дизайн. Идея заключается в следующем:
Я хочу создать программу с возможностью создавать шаблоны, которые затем можно использовать для создания экземпляров шаблона. Для примера: у нас есть шаблоны в виде шаблонов, поэтому у нас есть имя и различные свойства.
Таким образом, администратор создает / удаляет / редактирует шаблоны: скажем, «Стул» с «цветом» и «размером» в качестве свойств и «Стол» с «длиной», «цветом» и «размером».
После этого пользователь может добавить «Таблицы» или «Стулья» со свойствами, которые вы создали первыми.
Я создал Доменные классы: Пользователь, Шаблон, Свойство, Мебель
но я застрял в отношениях. Я почти уверен, что Grails способен обработать такие запросы, но я не уверен, что я на правильном пути.
Редактировать: Более конкретно:
Теперь у меня есть лучшее представление о всей конструкции:
классы домена (я пропущу пользователей для лучшего понимания):
План - Недвижимость - МебельСвойства - Мебель
Теперь я знаю, мне нужны «FurnitureProperties» для хранения фактической стоимости созданной мебели. Я немного запутался с hasMany / assignTo - определениями grails.
Pattern
hasMany[properties:Property]
belongsTo [furniture:Furniture]
Property
hasMany [furnitureProperties: FurnitureProperties]
belongsTo [pattern:Pattern]
FurnitureProperties
(nothing, just Property and Furniture as fields)
Furniture
hasMany [furnitureProperties: FurnitureProperties]
belongsTo [pattern:Pattern]
Я надеюсь, что смогу создавать шаблоны и свойства, которые принадлежат этому шаблону, и после этого я могу создавать новую мебель, выбирать шаблон, искать свойства и создавать правильные свойства мебели, чтобы заполнить их конкретными значениями. Было бы так:
Pattern: Chair and Table
Property: Chair.size, Chair.color / Table.width, Table.color
Furniture:Office-Chair, armchair, kitchen-table
furnitureProperty: all three furnitures with there properties depending on the pattern and the specific value.