【发布时间】:2014-09-18 12:41:05
【问题描述】:
我正在尝试为旧数据库定义模型。 数据库架构:
CREATE TABLE sysuser
(
id serial NOT NULL,
login character varying(20) NOT NULL,
passwd character varying(80) NOT NULL,
created boolean DEFAULT false,
deleted boolean DEFAULT false,
CONSTRAINT sysuser_pkey PRIMARY KEY (id)
)
WITH (
OIDS=FALSE
);
CREATE TABLE userinfo
(
id integer NOT NULL DEFAULT currval('sysuser_id_seq'::regclass),
name character varying(256),
surname character varying(256)
)
WITH (
OIDS=FALSE
);
这些与使用 id 列的表之间存在一对一的关系。
我的目标是通过提供登录来获取名称和用户名。 在 SQL 中,这将是: SELECT name, surname FROM sysuser JOIN userinfo USING(id) WHERE login = 'joe1'
如何定义我的模型以允许我进行这种查询:
userlogin = 'joe1'
sysuser = Sysuser.objects.filter(deleted=False, created=True, login=userlogin).all()[:1]
#how to acheive this part?
print sysuser.userinfo.name # Joe
【问题讨论】:
标签: python django django-models django-1.7