2019/04/18SHAREツイートシェアはてブGoogle+PocketLINEこんばんは、エンジニアの眠れない夜です。今回はDjangoのGenericViewでURLからパラメータをGETする方法を紹介します。URLの設定方法こんな感じで取得したいパラメータをP<share>の様に指定します。その後の[0-9]+は0~9の数字に1回以上一致するという正規表現です。いったURLでアクセスできます。URLパラメータをGET(取得)する方法GenericViewを使わいない場合ならこちらで紹介されているようにrequest.GET.get('share')と、するとURLで指定しているshareのパラメータを取得できるのですがGenericViewでは引数にrequestが無いので使えません。代わりにself.kwargs.get("キーワード")このように呼び出します。「どこからでてきたのそのselfは...?」そんな声が聞こえてきそうです。selfはクラス内で変数を定義するときに引数として宣言しますね。・get_success_url(self)モデルの作成、更新、削除などが成功時のリダイレクトに使う時このように関数をオーバーライドするときのselfに対してself.kwargs.get("キーワード")で値を取得します。GETの値をテンプレートに渡すGenericViewクラスの中にこちらを追加します。contextパラメータで受け取った値をcontext(型は辞書)にキーはshareにしてセットしたものを返します。}}と入力してリロードしてみてください。shareの値が表示されます。contextってなに?contextはViewで作成・編集した値をTemplateに渡して表示するときに使います。ここで指定した91793932という数字が入っています。みたいに計算はできません。中でいろいろ加工して値を渡します。contextこんな風に書き換えることで計算した後の値をテンプレートにedit_shareとして渡すことができます。計算した値が表示されます。最後にDjangoは使い慣れると驚くほどのスピードでサービスを展開できるので是非マスターしたいですね!公式ドキュメントは充実いているのですが、読んでもわからないところや自分の理解が足りず、そのとおりやってるつもりが。うまく動かない!とかもあるのでまだまだ勉強の余地があります。現在は『アイデアをカタチにする』ことが仕事です。コメントデータの処理方法の詳細はこちらをご覧ください。モデルのsave()でエラー発生。独立(7年目)現在は『アイデアをカタチにする』ことが仕事です。Storeをインストールする方法[Python]MeCabで誰でも簡単に分かち書きをする方法おすすめ便利ツール2行でできる物体検出(YOLOv3)物体検出APIが使えるようになります。初心者でも物体検出の独自モデルを作成できます。flask-uwsgi-nginxで簡単API作成Flaskを使ったAPIを簡単に作成できます。Docker-Django-HTTPSDjangoを無料でHTTPS化でデプロイできます。Nginx,uWSGIも設定済み。Docker-Selenium-GridDockerを使ってSeleniumをすぐに使い始められます。Selenium-with-DjangoSeleniumでスクレイピングした内容をDjangoと簡単に連携させられます。APIGmailAPIをすぐに使い始められます。サイト内検索サイト内の記事に含まれるキーワードで柔軟な検索ができます。