スポンサーリンク

DjangoGirlsTutorialをやってみる(13)記事の削除(delete)

前回は、「個別記事のpublishボタンの作成」について扱った。

http://twosquirrel.mints.ne.jp/?p=9921

今回は、

Homework: add more to your website!
https://github.com/DjangoGirls/tutorial-extensions/blob/master/homework/README.md

の、「Delete post」の項目にtryしてみる。(Railsでいうところの “delete” )
これで、CRUD(create, read, update, delete)に一通り触ったことになる。

(環境)
Windows8.1
Anaconda4.1.1 (python 3.5.2)
Django1.9
Atom
(下準備)
cmd.exeを「管理者で実行」
cd c:/py/djangogirls/myproject
activate root

(1)blog/templates/blog/post_detail.html の、edit ボタンの下に、以下の行を追加。

<a class="btn btn-default" href="{% url 'post_remove' pk=post.pk %}"><span class="glyphicon glyphicon-remove"></span></a>

 

[sourcecode language="python" padlinenumbers="true"]
<a class="btn btn-default" href="{% url 'post_remove’ pk=post.pk %}"><span class="glyphicon glyphicon-remove"></span></a>
[/sourcecode]

(変更前)

(変更後)

(2)blog/urls.py

url(r'^post/(?P<pk>\d+)/remove/$', views.post_remove, name='post_remove'),

 

[sourcecode language="python"]
url(r’^post/(?P<pk>\d+)/remove/$’, views.post_remove, name=’post_remove’),
[/sourcecode]

(3)blog/views.py

def post_remove(request, pk):
    post = get_object_or_404(Post, pk=pk)
    post.delete()
    return redirect('blog.views.post_list')

 

[sourcecode language="python"]
def post_remove(request, pk):
post = get_object_or_404(Post, pk=pk)
post.delete()
return redirect('blog.views.post_list’)
[/sourcecode]

(4)cmd.exe で、python manage.py runserver して、
ブラウザで、http://127.0.0.1:8000/

うまくいっているようである。

(5)Herokuにデプロイ

git add -A .
git commit -m “Added views to delete blog post.”
git push heroku master

むむ、

fatal: unable to access ‘https:/git.heroku.com/xxxxxxxx” : SSL certificate has expired

どうしたらいいのか?ググってもわからない。

https://devcenter.heroku.com/articles/ssl-endpoint#setting-up-ssl-on-heroku

https://devcenter.heroku.com/articles/ssl

https://devcenter.heroku.com/articles/acquiring-an-ssl-certificate

http://slproweb.com/products/Win32OpenSSL.html

はい、さっぱりわかりません。いきなりですが、Heroku、あきらめます。

とりあえず、CRUDができたので、いったん、DjangoGirlsTutorialは終了。

(6)heroku もう少し、、、

https://devcenter.heroku.com/articles/keys

Git Bash here → だめだった

https://mseeeen.msen.jp/how-to-install-heroku-toolbelt/

Heroku toolbeltをインストール。(以前にもインストールしたような、、、)

https://letsencrypt.jp/usage/

やっぱりさっぱりわからず、あきらめた。

Django,Python

Posted by twosquirrel