向Django站点添加额外的字段

时间:2017-08-11 00:13:59

标签: django

我有一个使用Django的django.contrib.sites.models.Site框架的项目,现在我需要为每个站点存储一个额外的值。

目前,网站包含以下字段

 id     | integer                | not null 
 domain | character varying(100) | not null                                                 | extended |              |
 name   | character varying(50)  | not null

这是模型

class Site(models.Model):    
    domain = models.CharField( _('domain name'), max_length=100, validators=[_simple_domain_name_validator], unique=True, )
    name = models.CharField(_('display name'), max_length=50)

以最小的占用空间向Site添加额外字段的更简洁方法是什么?

1 个答案:

答案 0 :(得分:2)

看起来你可以简单地创建Site的子类并在那里添加你的额外字段:

class CustomSite(Site):
     custom_field = models.CharField(max_length=150)

之后,请务必制作并运行迁移:

python manage.py makemigrations
python manage.py migrate

希望它有所帮助!