今日からシンフォニーですね。
気合を入れて行きましょう。
1時間目・プログラミング実習
symfony概要
XAMPPに入れたい場合
http://WEBテキスト/chapter/3/1a
を参照する。
2時間目・プログラミング実習
symfonyインストール
symfonyに触ってみる
プロジェクトを作る
symfony init-project test
アプリを作る
symfony init-app front
モジュールを作る
symfony init-module front default
バーチャルホストの記述変更(赤字を追加)
コントローラがwebにあるためwebを追加する。
<VirtualHost *:80>
DocumentRoot /home/user/test/web/
ServerName www.test.com
ErrorLog logs/www.test.com-error_log
CustomLog logs/www.test.com-access_log common
<Directory "/home/user/test/web/">
AllowOverride All
Options -Includes -ExecCGI
</Directory>
</VirtualHost>
設定を変更したらapache再起動http://www.test.com/にアクセスしてページのタイトルが「symfony project」になっていればOK
indexSuccess.phpの中に文字を書き込むとその内容がbodyの中に表示される。モジュールを作った際には設定を変更しなければsfActionsを継承したdefaultActionsクラスが生成される???
3時間目・プログラミング実習
プロジェクトのデフォルト表示のアプリケーションは最初に作成したアプリケーションの中のdefaultモジュール(test/apps/front/config/settings.yml)
テンプレートとexecute関数の命名の関係について
テンプレートへの値の渡し方
executeIndex内で
$this->name = "田中太郎";
として、テンプレート内で
<?php print $name?>
と書くと田中太郎と表示される。
(テンプレート側で$this->を使う必要はない)
4時間目・プログラミング実習
シンボリックリンク作成
ls -alで確認すると
lrwxrwxrwx 1 tanaka tanaka 35 3月 6 14:23 sf -> /usr/share/pear/data/symfony/web/sf
のような表示になる。
lrwxrwxrwxの最初のlの部分がシンボリックリンクという意味
executeIndex
に
$this->forward('default', 'module');
と記述して
こんな画面が出ればOK(シンボリックリンクが効いている)↓
symfonyファイル構造
よく使うのは
apps アプリケーションの保存ディレクトリ config 設定ファイル保存ディレクトリ lib ライブラリ保存ディレクトリ web WEB に公開する、画像、CSS、JS、フロントコントローラーなど
アクションの説明
5時間目・プログラミング実習
リクエストパラメータの取得
Viewの説明
view.ymlの内容を変更した後は
プロジェクト直下で
symfony cc
というコマンドを打つ
symfony ccはキャッシュクリア
CSSを複数指定」する場合以下のように記述する。
stylesheets: [main , main2]
6時間目・プログラミング実習
URLとモジュール、アクションの関係
0 件のコメント:
コメントを投稿