Python中文
首页
教程
问答
标签
搜索
登录
注册
在Django中,如何编写一个查询来选择四个整数的所有可能的组合?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我在写一个游戏网站,抽签是由四位数组成的。e、 g 1234号</p> <p>我试图用django编写一个查询,它将根据输入的四位数字选择所有获奖者。赢家是相同数字或相同组合的任意组合,1 2 3 4,2 3 1 4,4 1 3 2都是赢家。在</p> <p>编写此查询的最有效方法是什么。在</p> <p>-------------------此处没有提供样本供编辑</p> <pre><code>class Draw(models.Model): digit1 = models.PositiveSmallIntegerField(null=True,blank=True) digit2 = models.PositiveSmallIntegerField(null=True,blank=True) digit3 = models.PositiveSmallIntegerField(null=True,blank=True) digit4 = models.PositiveSmallIntegerField(null=True,blank=True) draw_date = models.DateTimeField() closed = models.BooleanField() winner = models.BooleanField() def __unicode__(self): return "Draw For Week Ending %s" %(self.draw_date) def get_absolute_url(self): return "/draw/%s/" % (self.draw_date) def save(self, force_insert=False, force_update=False): if self.digit1 and self.digit2 and self.digit3 and self.digit4: #check if there are winners try: winners = Ticket.objects.filter(draw=self.id,digit1=self.digit1,digit2=self.digit2,digit3=self.digit3,digit4=self.digit4) self.winner = True except Ticket.DoesNotExist: self.winner = False #close & save draw/winners self.closed = True # Add new Draw for following week. new_date = self.draw_date + datetime.timedelta(hours=168) new_draw= Draw(draw_date=new_date) new_draw.save() super(Draw, self).save(force_insert, force_update) # Call the "real" save() method. class Serial(models.Model): serial = models.CharField(max_length=4) closed = models.BooleanField(unique=False) def __unicode__(self): return "%s" %(self.serial) def get_absolute_url(self): return "/draw/serial/%s/" % (self.serial) class Ticket(models.Model): draw = models.ForeignKey(Draw) digit1 = models.PositiveSmallIntegerField() digit2 = models.PositiveSmallIntegerField() digit3 = models.PositiveSmallIntegerField() digit4 = models.PositiveSmallIntegerField() date = models.DateField(auto_now_add=True,editable=False) active = models.BooleanField(default=True) serial_used = models.ForeignKey(Serial,related_name="ticket_serial_used") def __unicode__(self): return "#: %s - %s" %(self.id,self.draw) def get_absolute_url(self): return "/ticket/%s/" % (self.id) def save(self, force_insert=False, force_update=False): if self.serial_used: serial = Serial.objects.get(pk=self.serial_used.id) serial.closed = True serial.save() super(Ticket, self).save(force_insert, force_update) # Call the "real" save() method. </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我建议调整代码以保存数字,以便按排序顺序保存。E、 g.如果用户输入“5262”,则应将其存储为“2256”。然后,当您选择一组获胜的数字时,您可以对这些数字进行排序,并按简单的相等进行筛选。这将比尝试检查所有可能的组合要好得多。在</p> <p>如果出于其他目的需要未排序的选择,请将新字段添加到模型<code>sortedDigits</code>或其他内容中,以便进行比较。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在Excel中读取公式并将其转换为Python中的计算?
1 回答
如何在excel中读取嵌入的excel,并将嵌入文件中的信息存储在主excel文件中?
1 回答
如何在Excel中返回未知列长度的非空顶行列值?
5 回答
如何在excel中选择数据列?
7 回答
如何在Excel中通过脚本自动为一列中的所有单元格创建公共别名
4 回答
如何在excel中高效格式化范围AttributeError:“tuple”对象没有属性“fill”
6 回答
如何在excel单元格中编写python函数
6 回答
如何在excel单元格中自动执行此python代码?
2 回答
如何在excel工作表中创建具有相应值的新列
3 回答
如何在Excel工作表中复制条件为单元格颜色的python数据框?
6 回答
如何在Excel工作表中循环
5 回答
如何在excel工作表中打印嵌套词典?
5 回答
如何在excel工作表中绘制所有类的继承树?
7 回答
如何在Excel工作表中自动调整列宽?
1 回答
如何在excel工作表中追加并进一步处理
5 回答
如何在excel工作表之间进行更改?
6 回答
如何在excel或csv上获取selenium数据?
10 回答
如何在Excel或Python中将正确的值赋给正确的列
1 回答
如何在excel或python中提取单词周围的文本?
6 回答
如何在excel或python中转换来自Jira的3w 1d 4h的fromat数据?
7 回答