Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ValueError:无法分配"&书信电报;Truckdb:Truckdb对象(1)>&引用;:&引用;测验.卡车“名称”;必须是一个";卡车名称;实例_Python_Django_Django Queryset - Fatal编程技术网

Python ValueError:无法分配"&书信电报;Truckdb:Truckdb对象(1)>&引用;:&引用;测验.卡车“名称”;必须是一个";卡车名称;实例

Python ValueError:无法分配"&书信电报;Truckdb:Truckdb对象(1)>&引用;:&引用;测验.卡车“名称”;必须是一个";卡车名称;实例,python,django,django-queryset,Python,Django,Django Queryset,我正在尝试在我的应用程序中创建如下实例: Views.py new_quiz = Quiz.objects.create(owner=request.user, comments="Autogenerated", truck_type=truck_type_object, truck_name=chosen_truck_object) 其中选择的\u卡车\u对象是: chosen_truck_object =

我正在尝试在我的应用程序中创建如下实例:

Views.py

new_quiz = Quiz.objects.create(owner=request.user, comments="Autogenerated", truck_type=truck_type_object,
                                       truck_name=chosen_truck_object)
其中
选择的\u卡车\u对象是:

    chosen_truck_object = Truckdb.objects.filter(display_name=chosentruck)[0]
和Models.py

class Quiz(models.Model):


    owner = models.ForeignKey(User, on_delete=models.CASCADE, related_name='quizzes')
    comments = models.TextField(max_length=256, blank=True)
    truck_type = models.ForeignKey(truck_type, on_delete=models.CASCADE, related_name='trucks')
    truck_name = models.ForeignKey(truck_name, on_delete=models.SET_NULL, null=True)


class truck_type(models.Model):
    name = models.CharField(max_length=30)
    color = models.CharField(max_length=7, default='#007bff')

    def __str__ (self):
        return self.name



class truck_name(models.Model):
    truck_type = models.ForeignKey(truck_type, on_delete=models.CASCADE)
    name = models.CharField(max_length=30)

    def __str__ (self):
        return self.name

如何将
truck\u type
truck\u name
实例传递到
quick.objects.create
中的
quick
模型?

首先,您需要遵循命名约定准则,因此您的模型名称必须是camelcase,如下所示:

然后请迁移您的数据库,然后针对您的问题,您需要使用
TruckName
对象,而不是
Truckdb

chosen_truck_object = TruckName.objects.filter(display_name=chosentruck)[0]

使用get方法
selected\u truck\u object=TruckName.objects.get(display\u name=chosentruck)
代替过滤器,它将保存,但在
TruckName
模型中没有任何字段名
display\u name
(但在TruckName模型中没有任何字段名display\u name):(
chosen_truck_object = TruckName.objects.filter(display_name=chosentruck)[0]