用django做一个查询页面,在查询指定category的产品时候,
skus = category.sku_set.filter(is_launched=True).order_by(sort_field)
没查到结果:
skus: Unable to get repr for <class 'django.db.models.query.QuerySet'>
检查了下MySQL数据库是有数据的,代码也是正确的,网络也正常。
解决思路:
根据错误提示,模型类没有响应,那么就是数据库的数据无法通过模型类展现出来,MySQL的数据类型或格式与model应该是不匹配。
MySQL里面的数据是提前检查,导入好的,那么就看model.py文件定义sku这个类有没字段定义错了类型。
default_image_url = models.CharField(max_length=200, default='', null=True, blank=True, verbose_name='默认图片')
对应MySQL表的字段,发现default_image_url这个字段在MySQL表中的字段是default_image。而且商品不仅包含文字信息,也包含图片,明显这个代表图片的字段定义为charfield是错的。于是改为如下:
default_image = models.ImageField(max_length=200, default=&