0
属性
我的模式看起来是这样的:多到一个在风暴
CREATE TABLE plans (
id SERIAL PRIMARY KEY,
description text
);
CREATE TABLE projects (
id SERIAL PRIMARY KEY,
project_id character varying(240) UNIQUE,
plan_id integer REFERENCES plans(id) ON DELETE CASCADE
);
我想要做的风暴查询沿
plan = store.find(Plan, Plan.project_id == "alpha")
# should translate to something like
# SELECT p.* from plans p LEFT JOIN projects proj ON p.id = proj.plan_id
# WHERE proj.project_id = 'alpha';
线(注意projects.plan_id
不是唯一)
我该如何设置?
看起来不错。我想我期望能够在Plan的某些属性中定义Plan.id == Project.plan_id关系,而不是显式地在find表达式中定义该关系,但这是有效的。 – keturn 2010-07-21 15:41:43
那么,根据你的代码结构,将Reference或ReferenceSet属性添加到类中可能更适合你的需求。例如,如果您已经检索到相关的项目行,则可以通过“project.plan”访问计划,如果您将项目类的参考定义为: plan = Reference(plan_id,Plan.id) 但是,如果我从项目名称开始直接想要计划,那么单个find()语句将导致更少的查询。 – 2010-07-22 02:51:43