![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| fray |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 139 Регистрация: 7.6.2007 Репутация: нет Всего: 0 |
Django.
Вот появилась проблема мне нужно определить поле типа integer[] в модели, не нахожу подходящего из уже имеющихся, объесните как его указать. Спасибо. Это сообщение отредактировал(а) fray - 11.6.2009, 01:00 |
|||
|
||||
| pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 2 Всего: 36 |
fray, объясни, пожалуйста, зачем создавать поле в таблице типа массив если это можно сделать через таблицу?
Нормальная_форма
|
|||
|
||||
| fray |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 139 Регистрация: 7.6.2007 Репутация: нет Всего: 0 |
можно конечно и нормализавать, но моему это менее наглядно, таблица раздуется и при этом скорость выборки снизиться. Так как сильно увеличиться количество полей. В любом случае спасибо, было интересно почитать. Ну раз в джанго нет, класса для определения данного типа поля, видимо придется делать именно так, конечно в данном подходе есть и плюсы, не придется писать сеттеры проверяющие существование элементов в массиве
Это сообщение отредактировал(а) fray - 11.6.2009, 15:03 |
|||
|
||||
| pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 2 Всего: 36 |
fray, пожалуйста, сообщите для какой предметной области вы разрабатывается программу и что эта программа должна делать (можно и в ПМ если информация конфиденциальная ). такой способ использования хорош если вы пытаетесь использовать psql как объектную СУБД для хранения произвольной информации (например = документооборот), но тогда лучше посмотреть на Zope и на готовые решения |
|||
|
||||
| fray |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 139 Регистрация: 7.6.2007 Репутация: нет Всего: 0 |
![]() Вот примерно такая схема. Пытаюсь реализовать бесконечную вложенность. Да что-то типа документа оборота, но думаю вложенность будет не очень глубокая. Нормализация к данной схеме, видимо это мы вводим еще один общий primary_key-шник, а для таблиц TClass и GroupClass их собственные id-шники не primary_key, выстпают в роли ForeignKey-eв. Это сообщение отредактировал(а) fray - 11.6.2009, 15:56 |
|||
|
||||
| pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 2 Всего: 36 |
третья нормальная форма очень даже подходит для этой задачи и + при нормализации БД будет легче строить отчеты, т.к. будет чёткая структура организованная с помощью самой СУБД и поэтому скорость генерации будет выше. чем если вы будете использовать одно поле как массив
PS делал подобную задачу - один раз сделал через поле и получил постоянную головную боль с поддержкой и частыми ошибками в части кода, которая связана с этим полем-массивом, а второй раз сделал через несколько таблиц + при помощи уже готового кода к TurboGears (аналог django) и не вспоминаю про эту программу. |
|||
|
||||
| fray |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 139 Регистрация: 7.6.2007 Репутация: нет Всего: 0 |
Да нормализация помогла. Спасибо.
Это сообщение отредактировал(а) fray - 15.6.2009, 17:48 |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Python: Веб-разработка и фреймворки | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |