私はdjango 1.8、Python 2.7.5、django-datatables-view 1.2、およびdatatables 1.10.6を使用しています。columndefsとcolumns.renderを使用しようとすると、次のエラーが発生します。
警告: 要求された不明...
ここでこれに関するドキュメントを調べたところ、基本的に、データテーブルは、私が要求しているデータを見つけることができないため、私が要求しているデータがわからないことがわかりました。そこで、データがどのように返されるかを調べました。
{
"recordsTotal": 176,
"recordsFiltered": 176,
"draw": 0,
"data": [
[
109,
"Hostname1",
"1.1.1.1",
"Excluded",
"Down"
],
[
116,
"Hostname2",
"2.2.2.2",
"Excluded",
"Up"
],
...
],
"result": "ok"
}
したがって、PHPを使用する前にデータテーブルを操作しました。列定義を操作するには、キーと値のペアが必要です"data": "Key"
。これにより、明らかにこれではないものを定義できます。準備された結果をこれに構築しているものを絞り込んだと思います:
def prepare_results(self, qs):
data = []
for item in qs:
data.append([self.render_column(item, column) for column in self.get_columns()])
return data
私は一生、このリストのリストを次の方法で結果を返す辞書に変換する方法を理解できません。
{
"recordsTotal": 176,
"recordsFiltered": 176,
"draw": 0,
"data": [
{
"Rest Id": "109",
"Host Name": "Hostname1",
"Ip Address": "1.1.1.1",
"Mode": "Excluded",
"State": "Down"
},
{
"Rest Id": "116",
"Host Name": "Hostname2",
"Ip Address": "2.2.2.2",
"Mode": "Excluded",
"State": "Up"
},
...
],
"result": "ok"
}
辞書内包表記でやろうとしていることを達成できる可能性があることは理解していますが、出力を返してもらいたいと思っている方法で正確に取得する方法がわかりません。また、すでに準備されたリストのリストに対して辞書内包表記を行うよりも、これを行うためのより良い方法があると信じなければなりません。ありとあらゆる助けをいただければ幸いです。前もって感謝します。