アットウィキロゴ
symfony★事始め
掲示板 掲示板 ページ検索 ページ検索 メニュー メニュー

symfony★事始め

最終更新:

kji-symfony

- view
管理者のみ編集可

とりあえず、sandboxをいじってみました。(2008.01.07)

  • 参考にしたのは以下のサイトです。
    • symfonyブック 日本語ドキュメント(暫定版)
      ここの「symfonyのインストール」でサンドボックスのtarballをダウンロードしました。
      ファイルの日付は2007.12.21でした。
    • MyFirstSymfonyProjectJapanese
      インストール後は、こちらのページを見て、書かれている通りに進み中です。
      (最初はこちらからtarballを落としたのですが、2006年のモジュールだったため、うまく動作せずに、数時間ハマりました。)
以下では、つまづいた点などをメモに残しておこうと思います。

  • インストール
    • MyFirstを見ると、「そして、SQLiteエクステンションも必要です、これはデフォルトのPHP5に含まれています。しかしながら、PHP 5.1.0であれば、手動で php.ini においてエクステンションが有効にする必要があります。 」とサラっと書いてあります。
      具体的にはphp.iniの設定が必要で、下記のコメントを外しました。
      (677行は自信なかったけど、たぶん必要と勝手に決めた)
      631行の「extension=php_pdo.dll」
      639行の「extension=php_pdo_sqlite.dll」
      646行の「extension=php_sqlite.dll」
      677行の「sqlite.assoc_case = 0」
これでCongratulationページが表示されました。

  • データモデルの初期化
    • schema.ymlは存在していなかったので、WEBのコードをそのままに、ファイルを作成。
    • $ php symfony propel-build-modelの実行
      sandboxのルートでコマンドプロンプトを開き、コマンドを貼り付けたが、動かず。
      PHPフォルダにパスが通っていないのが原因だったので、
      「マイコンピュータ」-「プロパティ」-「詳細設定」-「環境変数」の「PATH」を編集して、「c:\php;c:\php\ext」を追加。
      (\extを設定していないと、次の段階でまたエラーになるので、ここでついでに設定します)
その後のコマンドも、順番に実行して行くと、指定のアドレスで足場(scaffolding)が完成します。

  • 足場で日本語が出ない
    • createを押して1レコードを登録。「あああ」とか適当に入れて更新。表示は「??????d???」のように、ほとんど?の文字化け。
ここで1日目終了~~。

文字化け、解消しました。(2008.01.08)

  • 文字化けしている状態のページをブラウザの「ソースの表示」で表示させ、文字コードや言語を確認すると、文字コードは「UTF-8」になっているが、言語(languege)が「en」になっていた。
    で、言語だけの問題化と思ったが、文字コードの変更も必要だった。
    最終的には、下記3ファイルの内容を変更した。
    • sf_sandbox\apps\frontend\config\settings.ymlに下記を追記(実際には飛び飛びの行のコメントを外して変更。)
      all:
      .settings:
      charset: shift_jis  ←「utf-8」から変更
    • sf_sandbox\apps\frontend\config\view.ymlの言語「en」を「ja」に変更
      metas:
      language: ja   ←「en」から変更
    • sf_sandbox\apps\frontend\templates\layout.phpの「en」→「ja」に変更。
      <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
      lang="en">
      ↓  
      <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">

ひと通り、終了。(2008.01.09)

  • 文字化けが解消したので、残りの内容を消化。理解できなくても一定のスピードで進んで行く。基本的にページに書いてあるものをコピペしながら実行して行けば良かったが、最後のセキュリティの部分だけ一部変更した。
    「apps/backend/modules/security/actions/actions.class.php」の編集で
    return $this->redirect('main/index');
    の「'main/index'」の部分がそのままだと、ログイン後にページが見つかりませんエラーになったので、「'/post'」に変更。これでpostの画面が出るようになった。
正しいかどうかは分からないが、これで一通り終了したので、明日はこれをベースに少しいじくって勉強するつもり。

なんか「遅い」気がする・・・全体的にもっさり感があるので、速くする方法も必要だと思う。
記事メニュー
最近更新されたスレッド
ウィキ募集バナー