4 |
4 |
from django.views.generic.edit import CreateView, UpdateView, DeleteView
|
5 |
5 |
from django.views.generic.detail import DetailView, SingleObjectMixin
|
6 |
6 |
from django.views.generic.base import View
|
|
7 |
from django.utils.decorators import method_decorator
|
|
8 |
from django.views.decorators.csrf import csrf_exempt
|
|
9 |
|
7 |
10 |
|
8 |
11 |
from passerelle import utils
|
9 |
12 |
|
... | ... | |
38 |
41 |
class CsvDataView(View, SingleObjectMixin):
|
39 |
42 |
model = CsvDataSource
|
40 |
43 |
|
|
44 |
@method_decorator(csrf_exempt)
|
|
45 |
def dispatch(self, request, *args, **kwargs):
|
|
46 |
return super(CsvDataView, self).dispatch(request, *args, **kwargs)
|
|
47 |
|
41 |
48 |
@utils.protected_api('can_access')
|
42 |
49 |
@utils.to_json('api')
|
43 |
50 |
def get(self, request, *args, **kwargs):
|
... | ... | |
49 |
56 |
if column_title in request.GET:
|
50 |
57 |
filters[column_title] = request.GET[column_title]
|
51 |
58 |
return obj.get_data(filters, query=query, case_insensitive=case_insensitive)
|
|
59 |
|
|
60 |
@utils.protected_api('can_access')
|
|
61 |
@utils.to_json('api')
|
|
62 |
def post(self, request, *args, **kwargs):
|
|
63 |
filters = json.loads(request.body)
|
|
64 |
query = filters.pop('q', None)
|
|
65 |
case_insensitive = filters.pop('case-insensitive', False)
|
|
66 |
return obj.get_data(filters, query=query, case_insensitive=case_insensitive)
|
52 |
|
-
|