回答編集履歴

1

Python文化の追記

2021/04/27 19:25

投稿

Django_admin
Django_admin

スコア6

test CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
 
14
14
 
15
- ```コマンドライン
15
+ ```
16
16
 
17
17
  python3 manage.py startapp usersapp
18
18
 
@@ -44,7 +44,7 @@
44
44
 
45
45
  保守性が高いサービスの実現が可能です。例えばそれぞれの機能が独立したアプリになっていないと
46
46
 
47
- ブログをイジったこと他のサービスに影響することもあるのです。
47
+ ブログをイジったこと他のサービスに影響することもあるのです。
48
48
 
49
49
  だから、データモデルもテンプレートもアプリ毎に定義するようになってます。
50
50
 
@@ -64,6 +64,56 @@
64
64
 
65
65
  staticファイルやhtmlテンプレートの置き場所も開発中と運用中で違って当然です。それはsettings.pyをイジって変えれば済むことです。
66
66
 
67
+
68
+
67
69
  初期の設定は
68
70
 
69
71
  複数の人員での開発を想定しているので、アプリ内にその様なファイルを置く仕様になっているんですよ。
72
+
73
+
74
+
75
+ Railsの経験があるようですが、開発言語が違ったらコーディングの哲学も変わります。
76
+
77
+ Djangoは良くも悪くも、Python文化です。
78
+
79
+ pythonコミュでは
80
+
81
+ 暗示的な魔法のようなコードを嫌う傾向があります。
82
+
83
+ 何でもきちんと明示的に定義する必要があります。
84
+
85
+ コード量は増えますが、誰が読んでも理解できるコードが好まれます。
86
+
87
+ 試しにmanage.pyを開いて見てください
88
+
89
+ ```python
90
+
91
+ def main():
92
+
93
+ """Run administrative tasks."""
94
+
95
+ os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'boardproject.settings')
96
+
97
+ try:
98
+
99
+ from django.core.management import execute_from_command_line
100
+
101
+ except ImportError as exc:
102
+
103
+ raise ImportError(
104
+
105
+ "Couldn't import Django. Are you sure it's installed and "
106
+
107
+ "available on your PYTHONPATH environment variable? Did you "
108
+
109
+ "forget to activate a virtual environment?"
110
+
111
+ ) from exc
112
+
113
+ execute_from_command_line(sys.argv)
114
+
115
+ ```
116
+
117
+ execute_from_command_line()関数は
118
+
119
+ コマンドラインを実行するって意味でしょうけど、見た瞬間「書いてあるままだー」って思いましたね。