読者です 読者をやめる 読者になる 読者になる

万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

Django 1.11で動かない

`from django.shortcuts import render`

## 略
            return render_to_response('mysite/home_u.html',
                                      my_context,
                                      context_instance=RequestContext(request
                                                                      ))

これが動かなくなってた。

stackoverflow.com

render_to_responseとかcontext_instanceとかいらなくなった。

from django.shortcuts import renderに置き換える。 render_to_responserenderにする。 context_instance=RequestContext( )を外す。

あとは、引数の順が変わることに注意!!!

ログインのも関数からクラスベースに

url(r'^account/login/$', 'django.contrib.auth.views.login', だったので、

https://docs.djangoproject.com/en/1.11/topics/auth/default/#django.contrib.auth.views.LoginView

Deprecated since version 1.11:
The login function-based view should be replaced by the class-based LoginView.

from django.contrib.auth import views as auth_views とインポートして

    url(r'^account/login/$', auth_views.LoginView.as_view(template_name='account/login.html'),
        name='login'),

にした。