Уведомления

Группа в Telegram: @pythonsu

#1 Июль 6, 2010 20:05:11

test157
От:
Зарегистрирован: 2009-02-25
Сообщения: 54
Репутация: +  0  -
Профиль   Отправить e-mail  

Есть ли такое в Django ORM?

допустим есть модель

class BaseModel(models.Model):
val1 = models.CharField(max_length=50)
val2 = models.CharField(max_length=80)
а мне нужно от нее создать много других моделей типа proxy,но чтобы переназначить имена полей, что то типа такого:
class Info(models.Model):
name = BaseModel.val1
address = BaseModel.val2
и после я обращаюсь к виртуальной модели Info но все действия происходят с BaseModel

умеет ли такое Django?



Офлайн

#2 Июль 7, 2010 08:59:49

helm2004
От: Украина, Винница
Зарегистрирован: 2008-02-27
Сообщения: 630
Репутация: +  9  -
Профиль   Отправить e-mail  

Есть ли такое в Django ORM?

А что вам мешает наследовать модель BaseModel?

Офлайн

#3 Июль 7, 2010 13:05:22

test157
От:
Зарегистрирован: 2009-02-25
Сообщения: 54
Репутация: +  0  -
Профиль   Отправить e-mail  

Есть ли такое в Django ORM?

Ну я ее унаследую, но смысл в том что я хочу обращаться к полям baseModel под другими именами. т.е. вместо val1, val2, val3 использовать более осмысленные имена типа name, address и тд. как быть в таком случае?



Офлайн

#4 Июль 7, 2010 14:26:56

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

Есть ли такое в Django ORM?

Так почему вы BaseModel сразу эти поля так не называете?

Опишите вашу практическую ситуацию.



Офлайн

#5 Июль 7, 2010 14:37:48

helm2004
От: Украина, Винница
Зарегистрирован: 2008-02-27
Сообщения: 630
Репутация: +  9  -
Профиль   Отправить e-mail  

Есть ли такое в Django ORM?

Та видно там тоже, как и мне, код по наследству достался :)

Офлайн

#6 Июль 7, 2010 14:38:57

test157
От:
Зарегистрирован: 2009-02-25
Сообщения: 54
Репутация: +  0  -
Профиль   Отправить e-mail  

Есть ли такое в Django ORM?

начало истории тут: http://www.sql.ru/forum/actualthread.aspx?tid=772382

назвать не могу, потому что мне нужно в одной таблице хранить данные которые поидее должны храниться в разных табличках. т.е. я унифицирую данные и храню их в GeneriModel - в столбцах вида val1, val2, val3, val4 e.t.c. но работать с такими столбцами не удобно, поэтому я думал както унаследовать модель и работать на подобии прокси т.е. работать с GenericModel, но имена столбцов чтобы были не унифицированные.

Т.е. должно получиться что то типа Generic Storage когда в одной таблице хранятся данные из “разных” таблиц.



Офлайн

#7 Июль 10, 2010 20:31:21

ak
От:
Зарегистрирован: 2008-10-15
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Есть ли такое в Django ORM?

Тогда наверно алогитм примерно такой:
1. в базе средствами sql делаете view по нужным таблицам
2. в джанге описываете модель с мета-опцией managed = False
http://docs.djangoproject.com/en/1.2/ref/models/options/#managed



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version