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()

则可以解决了

 

posted @ 2018-05-09 18:05  赵凯强  阅读(1958)  评论(0编辑  收藏  举报