私はページ分割をfilter_alertから外したいと思います。 また、最後の結果はfilter_alertです。私はコードの下でもっと説明します。 これは私が3つのIDを持っているテーブルにそうドメイン views.pydjango TemplateViewはページングを使用して1つの結果しか得られません
class TestView(FormView, TemplateView):
template_name = 'home/main.html'
context_object_name = 'pages'
paginate_by = 10
form_class = DomainsForm
def get_context_data(self, **kwargs):
context = super(TestView, self).get_context_data(**kwargs)
list_tables = Domains.objects.all()
context['lists'] = list_tables
tbls_id = list_tables.exclude(status=0).values_list('id', flat=True)
context['alerts_list'] = Alerts.objects.all()
data = []
for row_id in tbls_id:
cron_info = get_cron_info(row_id)
data.append(cron_info)
context['data'] = simplejson.dumps(data)
tbl = Domains.objects.get(id=row_id)
t_pages = create_pg("Pages_" + tbl.tablename)
query_pages = t_pages.objects.all()
context['pages'] = query_pages
get_alerts = create_alerts('Links_' + tbl.tablename + '_Alerts')
filter_alert = get_alerts.objects.all()
context['all_alerts'] = filter_alert
return context
で私のコードで、それらの1 = 0のステータスを持っています。他の2つのidを取得してforループに渡したいと思います。しかし、私はテンプレートの結果を引き出すとき...私は最後のIDを取得します。 row_idを使用してIDを取得しています...印刷テストを行いました... 2 IDを返します... filter_alertsのすべての結果を表示したいときテンプレートの最後のID。
私はまたページネゴシエーションを実装したい...私は通常このコードを使用しますが、TemplateViewでは機能しません。
all_alerts = get_alerts.objects.all()
page = request.GET.get('page', 1)
paginator = Paginator(all_alerts, 10)
try:
details = paginator.page(page)
except PageNotAnInteger:
details = paginator.page(1)
except EmptyPage:
details = paginator.page(paginator.num_pages)
context['all_alerts'] = details
機能get_context_dataが、それには、要求を持っていないので、私はそれが動作していないことを知っています。私は別の関数を作成する必要がありますか? get_queryset関数を再作成してください。 わかりません... 助けてください。
filter_data = []
for row_id in tbls_id:
...
filter_alert = get_alerts.objects.all()
filter_data.append(filter_alert)
print filter_data # it prints both objects
context['all_alerts'] = filter_data
return context
template.html 中:あなたは
私は空のリストを使用し、それに追加 UPDATE ...テンプレートでは結果
コード私に与えていないありがとうall_alertsは動作しません
のための答えを必要としています。 –
k ...どうすれば修正できますか? – Omega
しないでください?これは基本的なプログラミング上の問題です。ループの最後に、これらのコンテキスト変数に含めるものを正確に考えてみましょう。 –