我是django的新手,我有一些问题。
我有一个用django-tables2渲染的html表,这个表基于一个模型: tables.py
class MasterTable(tables.Table):
class Meta:
model = Master
我有一个JS脚本在第一列中插入一个下拉按钮:
<script language="javascript">
function GetAllValues() {
var tbl = document.getElementById("myTable");
for (var i = 0; i < tbl.rows.length; i++){
for (var i = 1; i < tbl.rows.length; i++){
tbl.rows[i].cells[0].innerHTML = '<div class="btn-group">\
<button type="button" class="btn btn-xs btn-primary dropdown-toggle" data-toggle="dropdown">'
+ tbl.rows[i].cells[0].innerHTML +
'<span class="caret"></span>\
</button>\
<ul class="dropdown-menu" role="menu">\
<li><a data-toggle="modal" data-target="#" >Configura</a>\
</li>\
<li><a data-toggle="modal" data-target="#">Cambiar estado</a>\
</li>\
<li><a data-toggle="modal" data-target="#">Ver estadíicas</a>\
</li>\
<li class="divider"></li>\
<li><a data-toggle="modal" data-target"#">Reproceso</a>\
</li>\
</ul>\
</div>'
}
}
</script>
在我的models.py中,我有这个
class Provider(models.Model):
id_provider = models.IntegerField(blank=True, null=True, primary_key=True)
name = models.CharField(max_length=50, blank=True)
class Meta:
managed = False
db_table = 'mpc_proveedores'
def __unicode__(self):
return self.name
class Master(models.Model):
id_provider = Models.ForeignKey(Provider,
db_column='id_provider',
primary_key=True,
verbose_name='Provider')
year = models.IntegerField(blank=True, null=True)
month = models.IntegerField(blank=True, null=True)
class Meta:
managed = False
db_table = 'mpc_master'
我在html表中呈现的表是模型Master。 当我在html表中呈现主模型时,向我显示提供者名称而不是id_provider并且它很好,但是当我单击html表的第一列时,我需要获取id_provider的值,而不是提供者的名称。
如何将id_provider作为参数传递给另一个页面(表单)后,获取id_provider的值而不是提供者名称。
非常感谢任何建议,链接或代码段
提前致谢
答案 0 :(得分:0)
你可以这样做:
class MasterTable(tables.Table):
def render_id_provider(self, **kwargs):
return kwargs['value'].id_provider
class Meta:
model = Master