Python Django错误:解决方案\u building.ID\u客户\u ID不能为空

Python Django错误:解决方案\u building.ID\u客户\u ID不能为空,python,django,django-models,django-views,Python,Django,Django Models,Django Views,有人能帮我吗。我对这个很陌生,现在有点茫然。我知道这可能只是一个愚蠢的问题,但老实说,我被卡住了 我得到这个错误: 异常类型:IntegrityError at/building/ 异常值:解决方案\u building.ID\u客户\u ID不能为空 我做错了什么 views.py class buildingView(UpdateView): template_name="building.html" model = building form_class = build

有人能帮我吗。我对这个很陌生,现在有点茫然。我知道这可能只是一个愚蠢的问题,但老实说,我被卡住了

我得到这个错误:

异常类型:IntegrityError at/building/

异常值:解决方案\u building.ID\u客户\u ID不能为空

我做错了什么

views.py

class buildingView(UpdateView):
template_name="building.html"
model = building
form_class = buildingForm

def get_context_data(self, **kwargs):
    context = super(buildingView, self).get_context_data(**kwargs)  

    context['pk'] = 1
    context['numberOfObjects'] = building.objects.all().count()
   
    return context

def get_object(self, queryset = None):
    try: 
        obj = building.objects.get(id = 1)
    except: 
        obj = building.objects.create(id = 1)
    return obj

def form_valid(self, form):
    
    form.save()
    return HttpResponseRedirect(reverse("building_view", kwargs={'pk': self.kwargs['pk']}))
当我执行python manage.py sql时,我得到了这个

CREATE TABLE "solution_building" (
"id" integer NOT NULL PRIMARY KEY,
"ID_CUSTOMER_id" integer NOT NULL REFERENCES "solution_customer" ("id"),
"BUILDING_USE" varchar(2) NOT NULL,
"BUILDING_FLOORSPACE" integer,
我需要帮助。非常感谢你

model.py

class building(models.Model):
id                   = models.AutoField(primary_key = True)
ID_CUSTOMER          = models.ForeignKey(customer)
BUILDING_USE         = models.CharField(max_length = 2, blank = True, choices = c.Anvendelse)
BUILDING_FLOORSPACE  = models.IntegerField(null = True, blank = True)
def __unicode__(self):
    return '%s' % (self.ID_CUSTOMER)

错误来自这里:

def get_object(self, queryset = None):
    try: 
        obj = building.objects.get(id = 1)
    except: 
        obj = building.objects.create(id = 1) <---- here
    return obj

错误来自这里:

def get_object(self, queryset = None):
    try: 
        obj = building.objects.get(id = 1)
    except: 
        obj = building.objects.create(id = 1) <---- here
    return obj

你能展示一下你的模型吗?异常值:solution_building.ID_CUSTOMER_ID可能不为NULL表示您正在为不应为NULL的内容输入NULL值。在本例中,您似乎引用了一个外键,但没有插入外键值“ID_CUSTOMER_ID”Thks@RyanLiao是的,我发布了models.py。我如何使它也接受null?您的ID\u客户也必须为null=True和blank=True,但它会给我一个错误“ForeignKey”对象不可调用您能显示您的模型吗?异常值:solution_building.ID_CUSTOMER_ID可能不为NULL表示您正在为不应为NULL的内容输入NULL值。在本例中,您似乎引用了一个外键,但没有插入外键值“ID_CUSTOMER_ID”Thks@RyanLiao是的,我发布了models.py。我如何使它也能接受null??您的ID\u客户也必须为null=True和blank=True,但它会给我一个错误“ForeignKey”对象不是callableok thks@catherine。如果它也将接受新建筑,我该怎么办?ID_客户也必须为null=True且为blank=True。删除数据库并重新同步againthks@catherine…完成后,现在我遇到另一个错误`无法分配“u”“:“building.ID\u CUSTOMER”必须是“CUSTOMER”实例。')…这是什么意思???'default=“base on choices”基于您的Anvendelse选择。更改默认值,不要复制该值:)。关于默认值=0,如果没有定义值,则对IntegerField有效。这是默认值0
default=“02”
,关于您的问题,您需要创建新客户,然后获取id。该id将作为客户的值。可以吗?好的,凯瑟琳。如果它也将接受新建筑,我该怎么办?ID_客户也必须为null=True且为blank=True。删除数据库并重新同步againthks@catherine…完成后,现在我遇到另一个错误`无法分配“u”“:“building.ID\u CUSTOMER”必须是“CUSTOMER”实例。')…这是什么意思???'default=“base on choices”基于您的Anvendelse选择。更改默认值,不要复制该值:)。关于默认值=0,如果没有定义值,则对IntegerField有效。这是默认值0
default=“02”
,关于您的问题,您需要创建新客户,然后获取id。该id将作为客户的值。可以吗?