はじめに
いつも心は虹色に! nikkieです。
8/4-5に手を動かした内容をまとめておきます。
取り組んだこと
ActiveAdminを触る
業務で取り組んでいるRailsは経験が少ないので、手を動かして経験値をためていこうと考えています。
以下のQiita記事を参考にActiveAdminを触ってみました。
Railsで最速で管理画面を作る!
Authorの管理まで進みました。
https://github.com/ftnext/rails_active_admin_practice
こんな簡単に管理画面作れるなんて。。1
- 開発環境では
seeds.rb
に用意されたAdminを使う - モデル作成時に入力する属性を
permit_params
に指定しないと、管理画面からデータの作成ができない
ActiveAdminはGitHubのドキュメントが充実しているようなので、そちらも確認していきたいです。
activeadmin/docs at master · activeadmin/activeadmin · GitHub
Django Girls Tutorial 翻訳レビュー
ブログポストをテンプレートに渡して表示するところ(Django templates · Django Girls Tutorial)まで手を動かして確認しました。
GitHub - ftnext/my-first-blog: Repository for Django Girls Tutorial
文の訳としては適切と思っていた訳が、手を動かす中で混乱を招くと気づき、いくつか修正提案をしました。
PythonAnywhereにも慣れてきました。
Bashを立ち上げた後、以下のようにするとよさそうです。
- 仮想環境の起動:
source .virtualenvs/$USER.pythonanywhere.com/bin/activate
- GitHubのコードのあるディレクトリへの移動:
cd $USER.pythonanywhere.com
2
今回手を動かした箇所は以下のとおりです。
- Djangoのバージョンの指定の仕方が変わったようなので対応
Django~=2.0.6
と2.0.x系の最新を指定していた3ので、upgradeしました。- PythonAnywhereではソースコードを
git pull
で最新にした後、以下のコマンドを実行pip install --upgrade -r requirements.txt
- 前提1: 仮想環境を起動している
- 前提2: ソースコードをおいたフォルダ
/home/$USER/$USER.pythonanywhere.com
にいる
- PythonAnywhereってローカルの仮想環境と同じように扱えるのでいいですね。(AzureのWebAppsは経験少ないWindows OSなので、PythonAnywhereほど自在に扱えません)
- 静的なページを作ってデプロイ Introduction to HTML · Django Girls Tutorial
- 動的なページに変えてデプロイ(DBからポストを取得する) Django templates · Django Girls Tutorial
もとの英文側の問題?
Django URLsのソースコード(mysite/urls.py
)が、2.0.x系のDjangoで生成されたものとは違うようです。
https://tutorial.djangogirls.org/en/django_urls/#how-do-urls-work-in-django
from django.urls import path, include from django.contrib import admin urlpatterns = [ path('admin/', admin.site.urls), ]
2.0.x系で作られたmysite/urls.py
4
from django.contrib import admin from django.urls import path urlpatterns = [ path('admin/', admin.site.urls), ]
Django urls · Django Girls Tutorialと違うのはdjango.urls
からinclude
をimport
していないことです。
urlpatternsのリストにpath('', include('blog.urls')),
を追加するだけでなくinclude
をimport
する必要があります
git push -u origin master
5の-uの意味
気になっていたので少し調べました。
【Git】リモートにブランチを push してそのままトラックする
"git push" に "-u" あるいは "--set-upstream" を付けると、push 先のブランチをトラック (デフォルトで push や pull の対象に) するように設定されます。
なるほど。道理で初回だけgit push -u origin masterと
-uをつけていて、後はgit push
だけだったんですね〜。
ProGitのサイトでもう少し詳しい説明探してみよう(宿題事項)
以上です。
そして次の1週間が始まるのです。
-
RailsはActiveAdminの追加が必要ですが、Djangoは管理機能が入っていますね。それぞれの考え方を掘り下げると面白いかも↩
-
ソースは https://tutorial.djangogirls.org/en/django_templates/#one-more-thing です。
$USER
は仮想環境の起動にも使えると気づきました↩ -
https://tutorial.djangogirls.org/en/django_installation/#installing-packages-with-requirements↩
-
https://github.com/ftnext/my-first-blog/commit/6c4de89a91ffb87f456b82ac749456848a40faef#diff-7c13b13de4a13dc0f58dfa0f402d4999↩
-
https://tutorial.djangogirls.org/en/deploy/#pushing-your-code-to-github↩