Databaseってなんだっけ

Djangoチュートリアルを進めている途中
自分が、Databaseについてぱっと思いつくもの

postgresql、mysql、sqlite 
create、insert、select、where、like、limit、order by

乏しすぎるわ!一時的に使うことだけだったですし…
ということでDatabaseの勉強をしてみようと脱線してみる

勉強する前に気になることをメモ

  • Databaseの設計って?
  • 効率的なDatabaseって?
  • ゲームのDatabaseってどうなってる?(堅苦しいと頭に入らない)
  • Databaseの流行り?

ソーシャルゲームのためのデータベース設計」面白そうなので読んでみる
読んでみた、自分には時期尚早な話であった

Linux-DB システム構築/運用入門 (DB Magazine SELECTION)

Linux-DB システム構築/運用入門 (DB Magazine SELECTION)

検索キーメモ

  • データモデリング
  • ER(Entity-Relationship)、ER図、ERモデル
  • RDBMS(Relational DataBase Management System)
  • データ中心指向、データ中心アプローチ、データ中心設計
  • オブジェクトデータベース

目眩してくる 現実逃避にDjangoに戻ろう

Django for eclipse

Djangoにふれてみる
Django を使いこなすための全てがここにあります。」ということなのでチュートリアルをこなす
プロジェクトを作成するコマンド

django-admin.py startproject mysite

Django for eclipse
[file]→[new]→[Other...]から画像のように選択

続いて[Project name]を入力して自分の環境にあったように設定

データベースの設定

作成されたファイル構成と意訳

mysite/
    __init__.py
    manage.py
    settings.py
    urls.py
  • __init__.py: 触れることの無さそうなファイル?
  • manage.py: プロジェクトに対するコマンドラインユーティリティ 割とよく使う?
  • settings.py: プロジェクトの設定ファイル
  • urls.py: プロジェクトのURL宣言ファイル

[PyDev Package]右クリック[Run as]から[PyDev: Django]を選んで実行
以降[Run]だけでOK

アプリケーションを追加するコマンド

python manage.py startapp polls

作成されたファイル構成と意訳

polls/
    __init__.py
    models.py
    views.py
  • __init__.py: 触れることの無さそうなファイル?
  • models.py: データベースに関連するファイル これを参照してcreateしたりする
  • views.py: 自分まだよくわかってない

eclipseで同等のことをするためにはどうすればよいのだろう…
[PyDev Package]右クリック[Refresh]で作成されたファイルが更新される

models.py、settings.pyを編集してコマンドを実行するとデータベースファイルが作られる
(postgresql,mysqlだと先にゴニョゴニョしないとだめらしい)

python manage.py syncdb

(この際、いくつか対話的に入力せねばならない)
models.pyの記述からデータベースを作成するSQL文を表示するコマンド
(なんか便利だ)

python manage.py sql polls

とりあえず下地を作るところまではできたなかなか先へ進まない

Google App Engine for eclipse

eclipseGoogle App Engineが開発できないか?ということで偉大なる先人者のblogを検索する
PyDevをインストールすればいける(PyDev 1.4.7から対応みたい)
[file]→[new]→[Other...]から画像のように選択

続いて[Project name]を入力して自分の環境にあったように設定

初めて使うときは[Python interpreters]を設定
[Auto Config]があるので、何も考えずにさくっと次のステップへ

[Google App Engine Directory]のパスを指定

nextを選ぶとサンプルを選んで終了、finishで空で終了
なんだかんだでプログラム作成し終えたら
[PyDev Package]右クリック[Run as]から[PyDev: Google App Run]を選んで実行
以降[Run]だけでOK

Google App Engine

pythonDjangoに触れてみたかったのにGoogle App Engineにたどり着いた
http://code.google.com/intl/ja/appengine/docs/python/gettingstarted/introduction.htmlを参考にすすめる
サクサクとすすんでいくけども、理解しているかというとさっぱりである
app.yamlがよくわからないのでapp.yamlの必須要素を読む
webappを使用したhelloworldまでたどり着いた
webappからDjangoを使用したhelloworldにしてみたいので調べてみる
helperpatchを使うことによってDjangoを使用したものにできるみたい(まだよくわかっていない)
Django自体よくわかってないので調べてみる

egit

eclipseのplugin egitを使用してみる

egitインストール
http://download.eclipse.org/egit/updates
git serverを選択
gitSourceForge.JPのPersonalForgeを使用する
PersonalForge 機能を利用するためにはssh公開鍵の登録が必須です
公開鍵の作成
「Window」->「Preferences」->「General」->「Network Connections」->「SSH2」
「Key Management」秘密鍵、公開鍵を作成する
公開鍵を登録する


その後四苦八苦しながらpushできるようになった
なんど「auth fail」に泣かされたことか