tango with django的7.3.2我遇到的問題

1 最近爲了畢業論文和自己的小博客,又回溫了django的內容,發現了這本不錯的文檔

http://hackerxu.com/Twd/#7,興致勃勃地做到了這一步,對自動url感興趣,就繼續做了,後來發現報錯。

2 剛開始照着做發現

class Category(models.Model):
    name = models.CharField(max_length=128,unique=True)
    views = models.IntegerField(default=0)
    likes = models.IntegerField(default=0)
    slug = models.SlugField(unique=True)

    def save(self, *args, **kwargs):
        self.slug = slugify(self.name)
        super(Category,self).save(*args,**kwargs)
    def __str__(self):
        return self.name

後來發現執行makemigrations後,提示輸入默認值或者設置默認值。肯定不能設置默認值的,因爲這是區分唯一的url啊,保證unique爲true的前提是得先有值,後來我設置爲了null=True,blank=True,發現並沒有增加這個slug

3 順序是這樣子的

3.1剛開始不要寫unique=True,如果你的系統老報錯,別緊張,把添加的slug都註釋掉,如果只註釋掉函數,就會沒成功添加slug,可設置爲blank=True即可

3.2 makemigrations出現了adding slug這個條目纔對,然後migrate,然後執行populate_rango.py即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章