スパムとかの中の人、スパム親分の主催された初心者向けDjango勉強会に参加してまいりましたっ!

初心者のためのDjango勉強会

Django勉強会始まったよ

プログラムを全く知らないまめでも、チュートリアルが少しできたので大満足!! 本当に至れり尽くせりでとってもスムーズでした。

ハンズオン

分からない事があると先生が解決してくれます。 参加者と同じくらいの先生がいてびっくり。ハンズオンって素晴しいっ!!

覚えたこと

Djangoは「でぃーじゃんご」じゃないよっ!!

Djangoは「じゃんご」と呼びます。

Djangoとは作った人の名前なので人名の読みかたなのだそうです。 なるほどー。 でもどうしてもタイピングするときは心の中で「でぃー・じゃ・ん・ご」と唱えちゃいます。ううむ。

Djangoは言語じゃないよ

DjangoはPythonのフレームワークのひとつ

なんですって。 Webアプリケーションフレームワークらしいです。 WebアプリをPythonで作るときにとっても便利なのかな。ふむふむ。

勉強したこと

親分のくれた資料を見ながら早速環境を整えます。 http://python.charmr.org/static/document/2007/10/14/summary.pdf

必要なもの

ソフト

Terminal(OSX)とかコマンドプロンプト(Win)

  • テキストエディタ
  • ブラウザ

プログラム(?)

  • Python 2.5
  • Django

※親分の資料にあるとおり、Python2.5以下を使用する場合は別途データベースを操作してくれるものをインストールしておくことが必要になります。2.5はデータベースの操作も考えなくていいようなので、出来るのであればPython2.5にしましょう。

インストール作業

pythonやDjangoのインストールは普通にソフトをインストールするみたいな感じでとっても簡単でした。さらに親分やよしょりが様々なエントリを書いているのでとっても安心ですよっ!!

ターミナルやコマンドプロンプトでの操作がなれてる人はすいすいですな。 上記ソフトで良く使うらしい、「cd(移動)」とか「ls(一覧表示)」とか「pwd(現在地の絶対パスを表示)」とかchmodとかも一緒に覚えましたです。

ちゃんと動いているかを確認

さてこっからはターミナルとのお付き合いでした。 ターミナル上でごにょごにょとおまじないと唱えました。

あら不思議っ!! ユーザーフォルダ直下にspamフォルダが出来た!! さらにそのフォルダの中に「egg」というフォルダが出来てました。

どうやら「spam」はプロジェクト、「egg」はアプリケーションということらしいです。 ちょっとコードを見てみましょう。

django-admin.py startproject spam
cd spam
chmod 755 manage.py
./manage.py startapp egg

1行目

django-admin.py startproject spam

django-admin.pyというファイルに「spam」っていうプロジェクトを作って!!とお願い。

作成されるファイル

  • __init__.py
  • manage.py
  • settings.pyc
  • __init__.pyc
  • settings.py
  • urls.py
  • egg

2行目

cd spam

spamフォルダに移動

3行目

chmod 755 manage.py

spamフォルダの中にある、manege.py(←いろいろしてくれるスゴいやつ)の権限を755に変更する。結構好き勝手にできるようなるみたい。

4行目

./manage.py startapp egg

manage.pyに「egg」というアプリケーションセットを作って!とお願い。

作成されるファイル

  • __init__.py
  • models.py
  • views.py

…こんな感じ?

※注意 manege,pyというフォルダは自分の居場所と同じ場所にあるのですが、なんで「./」するのかなー? とLingerのdjnago部屋で聞いたところ、「./」は現在地であってターミナルさんに命令文と勘違いされないためにつけるらしいです。

http://www.lingr.com/room/django-ja/archives

「./manage.py startapp egg」 で検索するとおまぬけに質問しているまめこが見られます。 とっても分かりやすい説明ですので、インストールするときはあわせて読むと理解が深まるですよ。

概要・設計ポリシー

ForeignKeyやManyToManyといった難しそうーな言葉がたくさん出てきました>< ちょっと難しかったのでおまじないだと思っちゃえ。あとからあとから。

チュートリアル

PollというUstでもおなじみの投票システムでお勉強しました。

http://michilu.com/django/doc-ja/tutorial01/

このページを見ながらどんどん進めていきます。 勉強会ではコードしか読まないでどんどんやっちゃいました。 説明書とかは落ちついてからじゃないと読めない子なんです。 おうち帰ってからちゃんと読みましたよぅ!

印象としてはsetting.pyというのにちょっと書き足したり、DBの設定をするだけで下地が出来た印象を持ちました。

まずは、開発用サーバーを起動

と言ってもあんまり気にすることがなくて、

python manage.py runserver

とターミナルで打つだけでした。 http://127.0.0.1:8000/ へアクセスするとdjangoのページが開いてとっても嬉しい感じ。

setting.pyをテキストエディタで開いてDBの設定をする。 これは結構、MTとか動かすときもあったのでちょっと知ってるでした。

またターミナルに戻ってDB同期

python manage.py syncdb

するとごにょごにょーとたっくさん文字が出てきますが、エラーっぽいこと言われなければOKです。

Pollを始める

ちゃんと動いているか確認したときに行ったコマンドを使います。

python manage.py startapp polls

今度はmanage.py に「polls」というアプリケーションを作ってとお願いしました。

次にモデルというのを作るようです。 models.pyというファイルにチュートリアルに書いてあるおまじないとごにょごにょと書いていくと、どんどん出来ていきましたっ!! 楽しいっ!!

Djangoってこんな感じ?

今のところまめが見えてるかたちはこんな感じでした。

  1. データベースの下地を作ってもらう
  2. 作りたいアプリケーションをmanage.pyにお願いして作ってもらう
  3. models.pyにおまじないを書く
  4. ターミナルでデータベースに格納してほしいことを書いていく

models.pyさんにテキストエディタでいろいろ書きこむといろいろしてくれるんだろうなー。と思いました。

modelっていうものとか詳しくは分からないですけど、これからこれから。 頑張っていくですよー!