Advertisement
Guest User

Untitled

a guest
Oct 4th, 2015
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.09 KB | None | 0 0
  1. urlpatterns= [
  2. url(r'^search/', include('haystack.urls')),
  3. url(r'^moderate/', Moderate.as_view(), name='moderate'),
  4. ]
  5.  
  6. class Moderate(SearchView):
  7.  
  8. @method_decorator(staff_member_required)
  9. def dispatch(self, *args, **kwargs):
  10. return super(Moderate, self).dispatch(*args, **kwargs)
  11.  
  12. #model = Ad
  13. template_name = 'adapp/ad_moderate.html'
  14. #template_name = 'search/search.html'
  15.  
  16. paginator_class = DiggPaginator
  17. paginate_by = 10
  18. ad_type = None
  19. ad_sub_type = None
  20.  
  21. def get_queryset(self):
  22. qs = super(Moderate, self).get_queryset().filter(ad_type__isnull=False,
  23. ad_sub_type__isnull=False)
  24. if self.ad_type:
  25. qs = qs.filter(ad_type=self.ad_type)
  26. if self.ad_sub_type:
  27. qs = qs.filter(ad_sub_type=self.ad_sub_type)
  28. return qs
  29.  
  30. def get_context_data(self, **kwargs):
  31. context = super(Moderate, self).get_context_data(**kwargs)
  32. context['filter'] = ModerateFilter(self.request.GET)
  33.  
  34. return context
  35.  
  36. # define method to recieve fields from form, and change data accordings
  37. def post(self, request, *args, **kwargs):
  38. selected = request.POST['selected']
  39. record = Ad.objects.get(pk=int(selected))
  40. form = ModerateForm(request.POST, instance=record)
  41. if form.is_valid():
  42. form.save(commit=True)
  43. return HttpResponseRedirect('')
  44.  
  45. {% extends 'base.html' %}
  46.  
  47. {% load i18n url_tags %}
  48.  
  49. {% block content %}
  50. <div id="casing">
  51. <div id="content">
  52.  
  53. {# filter form, to show only models with moderated=True #}
  54. <form action="" method="get">
  55. {{ filter.form.as_p }}
  56. <input type="submit">
  57. </form>
  58.  
  59. <h2>Search</h2>
  60.  
  61. {# search form right from tutorial #}
  62. <form method="get" action="">
  63. <table>
  64. {{ form.as_table }}
  65. <tr>
  66. <td>&nbsp;</td>
  67. <td>
  68. <input type="submit" value="Search">
  69. </td>
  70. </tr>
  71. </table>
  72.  
  73. {% if query %}
  74. <h3>Results</h3>
  75.  
  76. {% for result in page.object_list %}
  77. <p>
  78. <a href="{{ result.object.get_absolute_url }}">{{ result.object.title }}</a>
  79. </p>
  80. {% empty %}
  81. <p>No results found.</p>
  82. {% endfor %}
  83.  
  84. {% else %}
  85. {# Show some example queries to run, maybe query syntax, something else? #}
  86. {% endif %}
  87. </form>
  88.  
  89. {% for object in filter %}
  90. {# a lot of template tags and third form to change value of model #}
  91. <form action="" method="POST">
  92. {% csrf_token %}
  93. <input type="radio" name="moderated" value="True">Accept
  94. <br>
  95. <input type="radio" name="moderated" value="False">Decline
  96. <input type="hidden" value="{{ object.id }}"
  97. name="selected">
  98. <input class="btn" type="submit" value="moderate">
  99. </form>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement