Django BinaryField无法渲染

时间:2014-09-15 18:28:40

标签: django

我有一个模型,我有一个BinaryField。当我进入管理区域并尝试使用模型表单添加新城市时,BinaryField的复选框不会被渲染。

models.py:

from django.db import models

# Create your models here.

class City(models.Model):
    name = models.CharField(max_length=100, null=False, blank=False, unique=True)
    enabled = models.BinaryField(default=True)
    timestamp = models.DateTimeField(auto_now=False, auto_now_add=True)
    updated = models.DateTimeField(auto_now=True, auto_now_add=False)

    class Meta:
        ordering = ["id"]
        verbose_name = 'city'
        verbose_name_plural = 'cities'

    def __str__(self):
        return self.name

admin.py:

from django.contrib import admin
from .models import City

# Register your models here.
class CityAdmin(admin.ModelAdmin):
    search_fields = ['name']

    class Meta:
        model = City

admin.site.register(City, CityAdmin)

HTML:

<div>
    <label class="required" for="id_name">Name:</label>
    <input class="vTextField" id="id_name" maxlength="100" name="name" type="text">
</div>

正如您在HTML中看到的那样,复选框输入元素根本不存在。我已经检查过,迁移看起来很好,该字段也存在于数据库中。我的虚拟环境设置为使用Django 1.7。

任何帮助将不胜感激。

由于

1 个答案:

答案 0 :(得分:0)

您需要BooleanField。 BinaryField用于二进制数据。 https://docs.djangoproject.com/en/dev/ref/models/fields/#booleanfield