回答編集履歴
1
HTMLは既に修正済みだったということなので。
answer
CHANGED
@@ -11,4 +11,35 @@
|
|
11
11
|
<input type="text" class="form-control" id="last_name_kana" value="{{last_name_kana }}">
|
12
12
|
<input type="text" class="form-control" id="first_name_kana" value="{{first_name_kana }}">
|
13
13
|
</form>
|
14
|
+
```
|
15
|
+
|
16
|
+
このエラー自体は View classでPOSTメソッドが定義されていないというエラーです。
|
17
|
+
しかしURLとViewを見る限り問題なく定義されているように見受けられます。
|
18
|
+
|
19
|
+
ただ、一つ気になったのが書かれているコードのインデントがおかしいです。
|
20
|
+
下記のようにClassの中に `def post`が書かれていません。
|
21
|
+
普通はエラーになるはずですが、もしかしてこのClassに`def get`などもあったりしますでしょうか?
|
22
|
+
仮にそうならば、`def post`がただの関数になっているために`POST`メソッド使えないよと怒られているのかもしれません。
|
23
|
+
```diff
|
24
|
+
class DateDolwnload(LoginRequiredMixin, generic.ListView):
|
25
|
+
|
26
|
+
+ def post(self, request, *args, **kwargs) :
|
27
|
+
+ if request.method == "POST":
|
28
|
+
+ d = {
|
29
|
+
+ 'name':request.GET.get('last_name_kana ')
|
30
|
+
+ }
|
31
|
+
|
32
|
+
|
33
|
+
+ if self.request.POST.get('static_employee_number', None):
|
34
|
+
|
35
|
+
+ wb = px.Workbook()
|
36
|
+
+ sheet = wb['sheet1']
|
37
|
+
+ sheet['C2'] = d ["name"]
|
38
|
+
|
39
|
+
+ response = HttpResponse(content_type='application/vnd.ms-excel')
|
40
|
+
+ response['Content-Disposition'] = 'attachment; filename=%s' % 'report.xlsx'
|
41
|
+
|
42
|
+
+ return render(request, 'hoge/custom_detail_detail.html', {'form': form})
|
43
|
+
```
|
44
|
+
|
14
45
|
```
|