python – Django中的原始SQL查询
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – Django中的原始SQL查询,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1213字,纯文字阅读大概需要2分钟。
内容图文
这个原始查询有什么问题吗?
Worker.objects.raw('Delete from costumer_worker Where costumer_ptr_id= %s', [costumer.id])
Costumer id返回一个字符串.但似乎没有任何事情发生,对象仍然存在于激励之后
对象Worker是来自Costumer的子对象,我想保留客户,但删除Worker对象.
以下是Costumer和Worker模型:
class Costumer(User):
slug=models.SlugField(unique=True)
description=models.TextField(null=True)
phone=models.IntegerField(null=True)
isWorker=models.BooleanField()
def save(self,*args,**kwargs):
self.slug=slugify(self.username)
super(Costumer,self).save(*args, **kwargs)
def __unicode__(self):
return self.username
class Worker(Costumer):
comment=models.ForeignKey(Comment, null=True)
keyword=models.ManyToManyField('job.JobGenre', null=True)
def __unicode__(self):
return self.username
解决方法:
您可以通过connection.cursor()(docs)直接删除您的记录:
from django.db import connection
cursor = connection.cursor()
cursor.execute('DELETE FROM costumer_worker WHERE costumer_ptr_id = %s', [costumer.id])
connection.commit()
但是,你要做的事情看起来太简单了,不能直接编写SQL,而是使用django ORM.
内容总结
以上是互联网集市为您收集整理的python – Django中的原始SQL查询全部内容,希望文章能够帮你解决python – Django中的原始SQL查询所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。