我将从PostgreSQL视图开始,因为它们对我的用例很有用,并且比函数提供更好的性能。
(这不相关,但我正在Heroku Postgres上使用Django 1.7 - 以防万一)。
我已经创建了一个视图并可以正常查询。我想编写一个Django包装器,使其像表格一样处理,并相应地查询和写入。我一直在审查Postgres关于视图的
假设我有以下视图:
(这不相关,但我正在Heroku Postgres上使用Django 1.7 - 以防万一)。
我已经创建了一个视图并可以正常查询。我想编写一个Django包装器,使其像表格一样处理,并相应地查询和写入。我一直在审查Postgres关于视图的
INSERT
和UPDATE
文档,但老实说,我发现他们的文档非常难以阅读,我几乎无法理解他们在说什么。假设我有以下视图:
CREATE OR REPLACE VIEW links AS
SELECT
listing.id AS listing_id,
CONCAT('/i-', industry.slug, '-j-', listing.slug, '/') AS link,
'https://www.example.com' || CONCAT(industry.slug, '-SEP-', listing.slug, '/') AS full_link,
listing.slug AS listing_slug,
industry.slug AS industry_slug
FROM listing
INNER JOIN company ON company.id = listing.company_id
INNER JOIN industry ON industry.id = company.industry_id
在这里,我使用industry.slug
和listing.slug
来构建链接。我希望能够从这个视图中更新这两个字段,如下所示:
UPDATE links
SET listing_slug = 'my-new-slug'
WHERE listing_id = 5;
如何正确地创建规则?
这与IT技术有关。请注意,不要删除HTML标签。