사용자가 자신의 계정을 설정할 수있는 포드 캐스트 관리 웹 사이트가 있습니다. 그러면 해당 사용자의 여러 에피소드를 만들 수 있습니다. 에피소드가 완료되면 사용자가 사용할 수 있도록 자동으로 생성되는 링크를 볼 수있는 버튼이 나타납니다. 내가 가지고있는 문제는 모든 에피소드마다 해당 특정 링크를 표시하려고하지만 항상 내가 최근에 만든 링크와 이전에 작성된 다른 에피소드의 링크를 계속 표시한다는 것입니다.Django : 특정 ID로 쿼리 필터링
<a class="btn btn-info box-shadow--6dp" href="{% url 'pf:episodereview' production_id=instance.id %}" role="button"><i class="fa fa-link" aria-hidden="true"></i>  Review Links</a>
의 URL 패턴 urls.py
에서 :
url(r'^episodereview/(?P<production_id>[0-9]+)/$', views.EpisodeReview.as_view(), name="episodereview"),
이 views.py
에서 일어나는 것입니다 :
이것은 사용자가 클릭 에피소드가 링크를 만들었습니다 버튼입니다
class EpisodeReview(LoginRequiredMixin, ProductionRequiredMixin, ListView):
template_name = 'pf/forms_episode_review.html'
podcast = None
def get(self, request, *args, **kwargs):
production_id = kwargs.get('production_id', None)
if production_id:
production = Production.objects.filter(id=production_id).first()
if not production:
return self.handle_no_permission()
return super(EpisodeReview, self).get(request, *args, **kwargs)
def get_queryset(self):
return Production.objects.filter(podcast=self.podcast)
def get_success_url(self):
return reverse('pf:dashboard')
그리고 모든 것이 표시되는 템플릿 :
{% extends "pf/base.html" %}
{% load crispy_forms_tags %}
{% block content %}
<br>
<br>
<div class="panel panel-default box-shadow--16dp col-sm-6 col-sm-offset-3">
<div class="panel-body">
<div class='row'>
<div class='col-sm-12'>
<h3><i class="fa fa-wpforms pull-right" aria-hidden="true"></i>Episode Review </h3>
<h5>Following links are generated automatically with your accounts and can be used immediately.</h5>
<hr/>
{% if object_list %}
<table class='table'>
<tbody>
{% for instance in object_list %}
<ul>
<li><b>Wordpress URL:</b> {{ instance.wordpress_url }}</li>
<li><b>Wordpress Short URL:</b> {{ instance.wordpress_short_url }}</li>
<li><b>Soundcloud Result URL:</b>{{ instance.soundcloud_result_url }}</li>
<li><b>Youtube Result URL:</b>{{ instance.youtube_result_url }}</li>
<li><b>Libsyn Result URL:</b>{{ instance.libsyn_result_url }}</li>
</ul>
{% endfor %}
</tbody>
</table>
{% endif %}
<hr/>
<button type="submit" class="btn btn-info box-shadow--6dp"><i class="fa fa-floppy-o" aria-hidden="true"></i>  Save
</button>
</div>
</div>
</div>
</div>
{% endblock %}
어떤 제안이라도 환영합니다!
if 함수 바로 위에'print (production_id) '를 넣고 올바른'production_id'를 얻는 지보십시오. – 1GDST
@ 1GDST 예, 올바른 id를 얻습니다. – wlmrlsda