1.TemplateNotExit
视图函数加载模板的时候,找不到模板.django的模板系统通过settings.py中的TEMPLATE_DIRS设置来查找模板所在的位置.首先要看settings.py中的TEMPLATE_DIRS的值与模板所在项目中的目录一致是否一致,然后设置一下TEMPLATES的值,如图:
2.Add or change a related_name argument to the definition for 'CustomerTip.create_user' or 'CustomerTip.update_user'.
<span style="font-size:18px;">class CustomerTip(models.Model):
create_user = models.ForeignKey(User, verbose_name = '创建者')
update_user = models.ForeignKey(User,verbose_name='更新者')
create_time = models.DateTimeField()</span>
这个问题是‘create_user’ 和 ‘update_user’很相似,需要额外添加一个‘related_name’来区分它们,加上related_name之后,一定要确保在INSTALLED_APP 中,user所在的APP在customer所在的APP之前
3.Models aren't loaded yet.
Django的版本是1.8, 执行python manage.py runserver 时出现这个问题,settings.py, models.py都没问题,但执行数据库查询时,就报models arent`t loaded yet.后来在stackoverflow上找到解决方法,在文件的开始加上import django django.setup()
4.No handlers could be found for logger "django"
这个问题是logging没有配置好的问题。Django 1.8的logging配置https://docs.djangoproject.com/en/1.8/topics/logging/
5.'Manager' object is not callable
Menu.objects(typ='1', key='user')
Menu.objects是一个manager对象,不是一个可调用的函数,要想获取相应的数据库记录,使用manager的方法,get,filter,all 等
6.mysql 把python的None值写入数据库会出现问题。
class Medo(models.Model):
name = models.CharField(max_length=90, blank=True)
md = Medo()
md.name = None
md.save()
当name=None时,save()的时候会出现问题,数据保存不到数据库中
7.TypeError: can't compare offset-naive and offset-aware datetimes
参考:https://docs.djangoproject.com/en/1.8/topics/i18n/timezones/#naive-and-aware-datetime-objects
8."<PermRole: >" needs to have a value for field "permrole" before this many-to-many relationship can be used.
<pre name="code" class="python">role = PermRole(name='test', comment='')
role.sudo = sudo_objs
role.save()
这个问题的原因就是在修改多对多属性的值的时候,要先有实例对象,在给多对多属性赋值
role = PermRole.objects.create(name='test', comment='')
role.sudo = sudo_objs
role.save()