Django笔记-连载(记录2018-12-16)
1、django从1.9开始ForeignKey中的on_delete参数是必须的。
hbook = models.ForeignKey('BookInfo')这句代码就让BookInfo类和HeroInfo类之间建立了一对多的关系。
所以在1.9&之后的module里面存在创建多对一的关系,需要在Foreign的第二参数中加入on_delete=models.CASCADE 主外关系键中,级联删除,也就是当删除主表的数据时候从表中的数据也随着一起删除
done
2、doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS
这个问题出现没有在setting INSTALLED_APPS 添加项目名称引起,添加即可解决
done
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'heroand.test1.booktest',# 进行项目的注册 ]
3、注册站点需要添加class到admin.site括号内,打开booktest/admin.py文件,自定义类,继承自admin.ModelAdmin类,自定义后台管理页面展示
done
admin.site.register(HeroInfo,HeroInfoAdmin)
4、添加测试页面
done
views定义请求->
def index(request):
return HttpResponse('index test views')
urls注册->
urlpatterns = [ path('admin/', admin.site.urls), url('admin/test', include('heroand.test1.booktest.urls')), ]
5、实例对象传入类型不一致问题
模板渲染中传入的内容只能是字典,不能是Context对象类型,问题主要出在版本上(版本兼容性问题),1.1版本中可以直接传入Context对象,在1.11后只能传入字典
done
可能我的解决方案不一定适合你`如果不行请重新google...never give up
本文来自博客园,作者:zolotest,转载请注明原文链接:https://www.cnblogs.com/test_home_c/p/10126835.html