2017-08-01 5 views
0

マイmodels.py:Djangoのモデル:int型()の引数は、文字列、バイトのようなオブジェクトまたは番号ではなく、「タプル」でなければなりません

class Channel(models.Model): 
    title = models.CharField(max_length=255) 

    def snapshot_statistics(self): 
     new_channel_stat = ChannelStatistic(channel=self) 
     new_channel_stat.save() 


class ChannelStatistic(models.Model): 
    channel = models.ForeignKey(Channel, on_delete=models.CASCADE) 
    view_count = models.IntegerField(default=0) 

    def save(self, *args, **kwargs): 
     self.view_count = 3, 
     super(ChannelStatistic, self).save(*args, **kwargs) 

snapshot_stastisticsを()私は次のエラーを取得するトリガー

values 
[(<django.db.models.fields.related.ForeignKey: channel>, None, 35), 
(<django.db.models.fields.IntegerField: view_count>, None, (3,)), 

DjangoはVIEW_COUNTのATTに3の私の割り当てを扱います:私はこれを見ることができますDjangoのデバッグで

int() argument must be a string, a bytes-like object or a number, not 'tuple' 

リブートをタペルとして。

この動作の問題は何ですか? どうすれば解決できますか?

ありがとうございます!

+0

はい、タプルを割り当てました: 'self.view_count = 3、'。そのコンマを見ますか? –

+0

ありがとうございました。私は一晩中働くときにもっと休憩を取るべきです;;) – selli69

答えて

5

ここに不要なカンマがある:

self.view_count = 3, 

タプルを作成します。

+2

ありがとう。私は一晩中働くときに休憩を取るべきです;;) – selli69

関連する問題