Django学习笔记6(iframe、外键插入)
1.{%include 'index.html'%i}
平时很好用的iframe在django里面的不是很好用
django里面提供了{%include 'index.html'%i}的方式来取代了ifame,但是在使用的时候,发现include的页面会受到父页面的css的影响,从而导致页面不理想
受影响的原因是因为父页面里面的class命名和iclude调用的页面的class有相同的
2.iframe
由于自己平时习惯使用ifame,且在做项目的额时候需要实现点击左面的链接,是网页的右部分显示不同的内容(其它对应的html页面)
a.这是需要点击的url
<li><a href="{% url 'user:user_detail_edit' %}" target="my">个人资料</a></li>
b.这是对应需要改变的页面
<div class="wrap-1-1"> <iframe name="my" width="100%" height="400px"></iframe> </div>
c.真正重要的是app里面urls.py的配置和views.py返回页面方法编写
path('user/edit/', views.user_detail_edit,name='user_detail_edit'), def user_detail_edit(request): return render(request,'user_detail.html')#这个页面便会呈现到上面的iframe
3.models里有外键,插入数据时
id = models.ForeignKey('A', unique=True)
举个例子,A表有主键id,B表里有主键id,且A.id是B表id的外键
我们在给B表插入数据的时候
A表里已有数据id=1
B.id=1,B.save(),
则会报类似的错
ValueError:Cannot assign:A must be a 'B' instance.
当我们改成
a=A();a.id=1;
B.id=a:B.save()
则可以解决了