![](/img/trans.png)
[英]How to convert a CharField to Datetime Field in Python(Django)?
[英]Convert CharField to Choice Field (PositiveSmallIntegerField) in Django
我目前的模型設置如下:
Class MyClass(models.Model):
my_field = models.CharField(max_length=100,...)
為了論證,所有的值都是"foo"
或"bar"
。
我想將此轉換為PositiveSmallIntegerField,而不是使用以下設置:
Class MyClass(models.Model):
FOO = 0
BAR = 1
FOO_BAR_CHOICES = (
(FOO, 'foo')
(BAR, 'bar')
)
my_field = models.PositiveSmallIntegerField(choices=FOO_BAR_CHOICES,...)
有什么方法可以將舊的my_field
CharField轉換為PositiveSmallIntegerField並保留所有舊數據? 或者我是否必須向模型添加新字段,通過對舊字段運行腳本來填充值,刪除舊字段,然后將PositiveSmallIntegerField重命名為舊CharField的名稱?
沒有Django模型ChoiceField?
我認為您可以在CharField中添加“選擇”而不會丟失任何數據。 請參閱https://docs.djangoproject.com/en/1.9/ref/models/fields/#choices
但是,如果要將字段類型更改為“PositiveIntegerField”,則必須執行多個步驟。
有關Django遷移的文檔: https : //docs.djangoproject.com/en/1.9/ref/django-admin/#makemigrations
希望這可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.