Приветствую.
Есть интернет-магазин, написанный на старом фреймворке Symfony 1.2.
Пользователи сайта могут создавать заказы. Со стороны пользователей все работает отлично.
Хочу в админку добавить возможность редактировать заказы. Так, чтобы можно было изменять в заказах количество выбранных товаров, их цену, а также удалять и добавлять позиции.
В базе данных поля хранятся в двух таблицах: "orders" - заказы, "order_position" - заказанные товары.
Схема ниже:
orders:
_attributes: { phpName: Order }
id: { type: INTEGER, size: '11', primaryKey: true, autoIncrement: true, required: true }
user_id: { type: integer, foreignTable: user, foreignReference: id, onDelete: setNull }
guest_id: { type: integer, foreignTable: guest, foreignReference: id, onDelete: setNull }
cost: { type: decimal, size: 9, scale: 2 }
comments: { type: longvarchar }
action: { type: varchar(255) }
created_at:
order_position:
id: { type: INTEGER, size: '11', primaryKey: true, autoIncrement: true, required: true }
order_id: { type: integer, foreignTable: orders, foreignReference: id, onDelete: cascade }
item_id: { type: integer, foreignTable: catalog_item, foreignReference: id, onDelete: setNull }
quantity: { type: decimal, size: 9, scale: 2 }
cost: { type: decimal, size: 9, scale: 2 }
Как создать в админке простую страницу для работы с одной таблицей (в этом случае "orders"), я знаю.
Но при такой реализации, я могу видеть и править минимум полей. Основное - нет возможности видеть и редактировать товары в заказе (из связанной таблицы order_position).
Каким образом можно подключить вывод товаров на странице редактирования заказов в админке?
Т.е. скорее всего в админке на странице редактирования заказа нужно как-то добавить подчиненную страницу.
Вообще для админки я все страницы создаю генератором и потом в случае необходимости меняю состав отображаемых полей или правлю сгенерированную форму.
Сложные нестандартные страницы для админки я пока не делал. Поэтому сейчас не знаю, с какой стороны подойти к решению задачи.