我很难为我的项目设计一个合理的设计。我有一个现有的Postgres数据库,可以从其他Python脚本不断更新。 基于Django框架构建的Web服务器将访问Postgres数据库以仅更新用户模型并显示登录用户的博客信息。博客信息是其他Python脚本在一夜之间更新的内容。
现在我的问题是,如果我必须使用现有的Postgres数据库syncdb
blog model
,那会导致任何问题吗?
例如:
models.py
class Blog:
title=...
content=...
author=....
并说我的Postgres数据库mydb有很多表,其中一个是blog
表,包含title
,content
和author
的列。
如何使我的模型与现有数据库同步?
现在假设我在我的数据库中包含了一个新列date of entry
。
如果我只是将我的模型更新为:
class Blog:
title=...
content=...
author=....
date of entry=...
会起作用吗?
这里有哪些潜在的问题以及针对这些问题的更简单的解决方案?
P.S:我过去曾使用South
。但这里的情况有所不同。我正在使用从Django的角度来看只读的db,到目前为止还不需要进行数据迁移。
答案 0 :(得分:2)
如果您的数据库是只读的,则不必执行syncdb
。使用模型上的managed=False
和db_table
meta option来指定它对应的表名,并使用likewise作为字段列名称。
如果您还没有,请参阅the doc on legacy databases了解详情。