根据 http://www.sqlite.org/foreignkeys.html,您可以通过运行启用外键支持:
PRAGMA foreign_keys = ON;
默认情况下禁用此支持,并且在运行大多数依赖于数据库的测试时是理想的.
在使用Django测试框架时如何控制此功能?你能在setUp / tearDown方法中发送特定于后端的命令吗?您是否愿意在全局连接设置(‘DATABASE =’设置)中指定此选项?
您可以在应用中激活它(通常在myapp / apps.py中).
from django.db.backends.signals import connection_createddef activate_foreign_keys(sender,connection,**kwargs): """Enable integrity constraint with sqlite.""" if connection.vendor == 'sqlite': cursor = connection.cursor() cursor.execute('PRAGMA foreign_keys = ON;')class MyAppConfig(AppConfig): def ready(self): connection_created.connect(activate_foreign_keys)
您还必须配置MyAppConfig,将default_app_config =’myapp.apps.PanelConfig’写入myapp / __ init__.py.
注意:这样不仅可以激活外键,还可以激活sqlite.不过,我认为这就是你想要的.
总结以上是内存溢出为你收集整理的Django – 如何在SqLite3后端启用外键全部内容,希望文章能够帮你解决Django – 如何在SqLite3后端启用外键所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)