問題があります。 検索された式を保存し、直後にその数を増やしたい。 私はget_or_create
メソッドを使用しますが、毎回エラーが発生します。Django get_or_createとすぐに増加する
models.py
class TopSearch(models.Model):
expression = models.CharField(max_length=255)
count = models.IntegerField(default=0)
と私ははこのやりたい:、
- 検索式が存在する場合には、それ以外の場合は1
- することにより、そのカウントをインクリメントそれとimmidietlyインクリメントを作成しますその数を1だけカウントします。
君は !
からの提案の後、私は 'OBJ、作成= TopSearch.objects.get_or_create(表現=何か)で' created'は 'どのようにそれが何であるかをwondertingました作品が – Srinivas
作成された場合は、カウント= 1です。それはカウント=カウント+ 1ではないので、保存する必要があります。これを最適化するには、get_or_create()に 'defaults = {'count':1}'を追加し、残りのコードに対して 'if created:'を追加します(update_field = ['counts']をifテーブルが列を伸ばす)。 – Melvyn
私は同意すると、デフォルトを追加すると良い最適化であり、プラスコードが読みやすくなります。 – zaidfazil