Django

Django GetとPostはclassでまとめよう

記事の内容

・GETでのリクエストとPOSTリクエストはclassでまとめよう

class でのまとめ方

すべてdefで書いていると、どちらが初期表示でどちらがPOSTなのかわかりにくくなるので、classでまとめるようにしたら見やすくなります。

class T_TestView(View):
    '''
    テスト画面
    ''' 
    def get(self, request, *args, **kwargs):
        '''
        テスト画面-初期表示
        '''

        #テスト情報取得
        test = T_Test(request).get_test(kwargs.get('id'))

        params = {
            'test' : test,
            'form' : TestForm() #テスト用フォームを作成し渡す
        }
        return render(request, 'test/create.html', params)

    def post(self, request, *args, **kwargs):
        '''
       テスト画面-作成処理
        '''
        form = TestForm(request.POST)
        test= form.save(commit=False)
        test.save()                

ちなみにurl.py での受渡方法

    path('test/', T_TestView.as_view(), name='test_view'),

 

-Django

© 2021 ごろう@縁紡ぐ