[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: mvc бд
tyshkan
Какой бы подход не пришел в голову он либо не гибкий или затратный

допустим есть таблица А с полями id 1 2 3 поле 3 содержит массив из id B

таблица Б содержит поля 1, 2, 3;

объекты буду писать в json чтобы было понятно

Цель получить объект вида
{"A":{"1a":1,"2a":2,"3a":[{"1b":1,"2b":2 ,"3b":"3"},{"1b":1,"2b":2,"3b":"3"},{&quo t;1b":1,"2b":2,"3b":"3"}]}}

я вижу два решения, но не могу понять какое будет лучше
1 создать один класс модель в которой, есть один метод в котором все и происходит выбираем все из A после по третьему полю делаем выборку используя in и заменяем в поле 3 первой выборки получили нужный объект.

итого один объект не нагруженный контролер, и модель с одним методом которая все сделал как надо, не гибко кроме как этого результата смысла от класса нету...


2 создаем два класса модели, создаем 1 объект который отвечает только за выбору из таблицы A, после контролер создает еще три объекта модели Б в которых производит выборка по таблице Б после в контроллере дополняем полученную А объектами Б.

итого вместо 2 селектов 4, создано 4 объекта модели, по количеству операций усложнение. но зато более гибко или мне только так кажется.

как правильнее поступить?

kaww
т.е в поле а3 хранятся связи с В? По моему не верно спроектирована БД, нужно завести еще одну таблицу с поолями aId и bId для хранения связей, соответственно у модели А есть методы getB() и setB()
SlavaFr
2 и именно по тем причинам, которые ты сам же и перечислил

_____________
↓↓↓↓↓↓↓↓↓↓
ответ может быть здесь
или в mysql_error();
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.