Hel*_*nar 1 python django django-models
我想执行一个随机的.py文件,在myproject/myapp文件夹中说foo.py,在某些时期使用crobjob
我在我的model.py中为app提供了这个基本模型:
class Mymodel(models.Model):
content = models.TextField()
Run Code Online (Sandbox Code Playgroud)
假设我在我的foo.py中有这个,我想检查是否有任何Mymodel对象的内容字段与mytext相同,如果没有使用mytext作为内容创建一个新的Mymodel,如果已经存在什么都不做的话.
<do django importings>
mytext = "something here"
if Mymodel.filter(content=mytext) == null:
newitem = Mymodel(content=mytext)
newitem.save()
else:
pass
Run Code Online (Sandbox Code Playgroud)
所以这是我的问题,我将做什么django进口?另外我如何检查查询是否没有项目(不知道Mymodel.filter(content = mytext)== null是否有效.另外我不知道这是否是实现我的目标的有效方法Mymodel的数量会很高.
谢谢
你在这里有两个不同的问题 - 将它们拆分出去会更好.
要运行单独的脚本,最好创建一个./manage.py命令.请参阅有关如何执行此操作的文档.
对于你的第二个问题,你提供的代码不是有效的Python,因为没有'null'值 - 你的意思是None.但即使这样,代码也无法正常工作,因为这不是您使用Django ORM编写查询的方式.你想要这样的东西:
if not MyModel.objects.filter(content=mytext).count():
Run Code Online (Sandbox Code Playgroud)
它询问数据库有多少项有content = mytext,如果没有则为真.
| 归档时间: |
|
| 查看次数: |
147 次 |
| 最近记录: |