我有:
var setText = $('.breadcrumb .set-text');
// Initialize .breadcrumb for the existing '.nav-tabs .active'.
setText.addClass('active');
var initText = $('.nav-tabs .active').text();
setText.text(initText);
$('.nav-tabs li a').on('click', function () {
setText.text($(this).text());
});
我从旧数据库导入了所有用户。我显然可以做到:
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="nav nav-tabs">
<li class="active">
<a data-toggle="tab" href="#">some text</a>
</li>
<li>
<a data-toggle="tab" href="#">some text1</a>
</li>
</ul>
<ul class="breadcrumb pull-right">
<li>
<a href="#">Home</a>
</li>
<li class="set-text">
<a href="#"></a>
</li>
</ul>
<div class="tab-content">
<div role="tabpanel" class="tab-pane fade in active">
<!--some content here-->
</div>
<div role="tabpanel" class="tab-pane">
<!--some content here-->
</div>
</div>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
返回class User(models.Model):
name = models.CharField()
class Worker(User):
role = models.CharField()
个实例。
但是现在,我需要创建一个继承自bob = User.objects.get(name='bob')
的Worker实例?我第一次想到这个:
bob
返回一个新的Worker实例,但不是我想要的Bob用户关联。我怎么能基于bob
实例创建这个Worker实例呢?
答案 0 :(得分:0)
这是解决此问题的正确而完整的方法。多表继承只是User和Worker之间的OneToOneField关系,这是get here点。
要从User实例创建子类Worker,您应该这样做:
user = User.objects.get(name='bob')
worker = Worker(user_ptr=user, role='chief')
worker.__dict__.update(user.__dict__)
worker.save()
这里重要的一点是两个实例之间的dict更新。
这个问题可能会重复,但您必须在评论中搜索完整的答案。 dict更新技巧是解决方案的重要组成部分。