Python Django datatable视图相关字段
我被这个弄糊涂了。我用它来显示模型中的数据。但我得到错误:“'tuple'对象没有属性'replace'。这是某种模型类型问题还是转换问题 我的名单Python Django datatable视图相关字段,python,django,python-2.7,django-models,datatables,Python,Django,Python 2.7,Django Models,Datatables,我被这个弄糊涂了。我用它来显示模型中的数据。但我得到错误:“'tuple'对象没有属性'replace'。这是某种模型类型问题还是转换问题 我的名单 class CustomerList(BaseDatatableView): model = Profile columns = [("id", 'user__id'), ("name", 'customer__name'), 'abn', 'street', 'suburb', 'post_code', 'state', 'mo
class CustomerList(BaseDatatableView):
model = Profile
columns = [("id", 'user__id'), ("name", 'customer__name'), 'abn', 'street', 'suburb', 'post_code', 'state', 'mobile']
order_columns = [("id", "user__id")]
max_display_length = 500
def render_column(self, row, column):
pprint.pprint(globals())
pprint.pprint(locals())
if column == 'mobile':
return str(row.mobile)
else:
return super(CustomerList, self).render_column(row, column)
def get_initial_queryset(self):
return Customer.objects.filter(client_id=self.request.user.profile.client.id)
我的模型
class Customer(models.Model):
name = models.CharField(max_length = 100)
client = models.ForeignKey(Client)
date_created = models.DateField(auto_now_add = True, null=True, blank=True)
history = HistoricalRecords()
def __unicode__(self):
return self.name
class Profile(models.Model):
user = models.OneToOneField(
User,
primary_key=True,
related_name='profile'
)
abn = models.CharField(max_length=11,help_text = "Australian Business Number")
street = models.CharField(max_length=100)
suburb = models.CharField(max_length=100)
client = models.ForeignKey(Client,blank=True,default=1,null=True)
customer = models.ForeignKey(Customer,blank=True, null=True)
history = HistoricalRecords()
post_code = models.CharField(max_length=100)
state = models.CharField(max_length=10)
country = models.CharField(max_length=100, default = 'AU')
points = models.DecimalField(max_digits=14, decimal_places=4,default=0)#precision to 2 decs as the prices [will need to be rounded down]
mobile = PhoneNumberField(blank=True, null=True)
avatar = models.CharField(max_length=255,default="",blank=True)
invite_token = models.CharField(max_length=128,default="",blank=True)
def __unicode__(self):
return self.user.get_full_name()
你能发布堆栈跟踪吗?错误消息告诉我它在需要字符串的地方得到了一个元组。你检查过“列”的格式吗?不知道如何对数据表进行跟踪,这就是我得到的所有信息。怀疑是由于格式化的原因,只是不知道如何更改它。{“sError”:“tuple”对象没有属性“replace”“tuple”对象没有属性“replace”“,“iTotalRecords”:0,“结果”:“错误”,“文本”:“tuple”对象没有属性“replace”“tuple”对象没有属性“replace”“,“aaData”:[],“sEcho”:1,“iTotalDisplayRecords”:0}无论是文档还是django datatables的源视图中,都没有任何内容暗示您可以对列或order_columns属性使用元组。这是从哪里得到的?django datatables视图本身生成元组,我相信这让我很困惑,因为我从documentation复制了语法尝试更改顺序列=[(“id”,“用户id”)]到顺序列=[“id”]