【问题标题】:Django: Bypassing the database abstractionDjango:绕过数据库抽象
【发布时间】:2013-10-07 09:19:57
【问题描述】:

我已经用 django 玩了几天,它看起来很棒,但是如果我想改变我的数据库的结构我觉得很痛苦,然后我会遇到一些相当尴尬的选择。

有没有办法完全绕过 djangos 数据库抽象,所以如果我更改数据库的结构,我不必猜测会生成它的模型或使用工具(南或...)来改变事情?

我基本上想要这个:https://docs.djangoproject.com/en/dev/topics/db/sql/(原始 SQL 查询),但不是引用模型,而是引用外部数据库。

我可以只创建一个空模型,然后只对其执行原始查询吗? (并在外部设置数据库)

谢谢

附:我真的不介意我是否有单独的数据库用于管理数据和应用数据

【问题讨论】:

  • 我不太明白这个问题——或者你的动机。只是因为改变db结构有点困难(虽然我不知道你为什么不使用South),你想扔掉ORM提供的所有帮助?另外,您将无法使用管理员或模型表单 - 再次,只是因为迁移有点棘手?
  • 另外,当您在开发中时,只需删除数据库并在需要时使用 syncdb 重新创建它。
  • 使用 ORM + South 使得更改数据库结构比原始 SQL 更容易方式

标签: python sql database django


【解决方案1】:

您的问题已经存在,只需阅读此处的文档文章:Executing custom SQL directly

【讨论】:

    猜你喜欢
    • 2017-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-30
    • 2015-12-14
    • 2012-11-22
    • 2015-05-15
    • 2020-05-27
    相关资源
    最近更新 更多