忍者ブログ
勉強用に使いたいと思います。三日坊主の可能性大
[1]  [2]  [3]  [4]  [5]  [6]  [7
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

お久しぶりにSymfony。

アルバイトで実際にSymfonyを使ってイロイロしているわけですが、
僕はここが一番時間くったかもしれません。
どこで、何をしているのか。
Jobeetを見てもイマイチわかりませんよね。
やっぱりそこらへんは英語直訳な文章よりも、しっかり日本人が書いた書籍を読むとわかりやすいです。

今回はページの作成。
Hello Worldとほぼ同じなんですけどね・・・

では、いってみましょー。

----キリトリ----
プロジェクトルートに移動
$cd /home/chiro/sf14/



1.モジュール生成
Page・・・ページを表示
Inquiry・・・お問い合わせ
という定義で。
$php symfony generate:module frontend Page
$php symfony generate:module frontend Inquiry




2.アクションの実装
$vim apps/frontend/modules/Page/actions/actions.class.php
以下のメソッドを追加
public function executeShow(sfWebRequest $request)
 {
   $this->page = PageTable::getInstance()->findOneBySlug('top');
 }




3.ページの実装
$vim apps/frontend/modules/Page/templates/ShowSuccess.php
以下を書き込んで新規作成
<br>

 <h2>
   このページのタイトルは、「
   <?php  echo $page->getTitle() ?>
   」です。
 </h2>




4.結果確認
http://172.16.19.0:8080/frontend_dev.php/Page/Show
こんな感じになってればok
70776423.jpeg
PR
久々にメイプルについて。

というか、ほぼ一週間以上ログインしていません。
リアルがハードすぎます;;
それでも、ログインしてなくても、かなりの時間をメイプルに費やしていますね。
コミュニケーションツール、おそろしや。

口外禁止をくらっているので、書けないことはたくさんありますが、
恐らく今いる連合から抜けます。
理由は納得のいくものから、びみょ~なものまで色々と。



どうすっかな。へるめす教に入信するかな。



とりあえず、今回得たもの・再確認できたもの・再確認するべきものを整理
・相手の言いたいことを見定めること(たとえ相手の表現がおかしくても、真意を見る)
・「自分用語」は使わない(使うときは注釈をいれる)
・わからない表現があったらしっかり質問する
・相手が***をしたからといって、こちらも***をしていいわけではない(***には強行手段とかマナー違反とかが入る)
・議論の主軸を見失わない(主軸を遷移する場合にはそれを明言するか、別議題として出す)
・相手の短所よりも相手の長所を見つける
・その人に合うベストな方法を選ぶ
・1人が独占すると、効率よく動かない(HPの更新とか)
・リスク回避とリスクヘッジについて、もう一回勉強
・どんな状況でも、守れるマナー・モラルは守る(メール作法とか)
・良いことを取り入れて悪いことは直す
・優先順位をつける

他にもいろいろあった気がするけど、パニック中の頭で思い出せるのはこれだけ。




ここからは、メンタル全開ですので、見たい方だけどうぞ。

最近は三日坊主じゃないです!w
結構マジメに勉強している(風)ですよ。むふふ。

今回はデータベースの設定について。
使用するのはこちら。

データベース・・・MySQL
ORM・・・Doctrine

Webページのデータを挿入するためのテーブルを作成します。
カラムは以下の通り。

title・・・ページタイトル
body・・・本文
category・・・カテゴリ(news, about usなど)

では、いってみましょー!


----キリトリ----
プロジェクトルートに移動
$cd /home/chiro/sf14



1.MySQLの設定
Ubuntuインストール時にLAMPサーバを構築すると、ルートにパスワードが設定されないので、パスワードを設定する。
$sudo dpkg-reconfigure mysql-server-5.5
MySQLにログインできるか確認
$mysql -uroot -ppassword
mysql>exit;



2.Symfonyデータベースの設定
$vim config/databases.yml
attributesを追加し、MySQLのパスワードを書く
 all:
   doctrine:
     class: sfDoctrineDatabase
     param:
       dsn:      mysql:host=localhost;dbname=sf14
       username: root
       password: password
       attributes:
         default_table_charset:  utf8
         default_table_collate:  utf8_unicode_ci




3.テーブルの作成
$vim config/doctrine/schema.yml
以下を追加
 Page:
   actAs:
     Timestampable:  ~
     Sluggable:      ~
   columns:
     title:
       type:     string(100)
       notnull:  true
       default:  ''
     body:
       type:     clob
       notnull:  true
       default:  ''
     category:
       type:     string(32)
       notnull:  true
       default:  ''




4.データベースと各種ツールの生成
コマンドを見るとわかるとおり、データベース・モデル・フォーム・フィルター・SQL文を生成する。
$php symfony doctrine:build-db
$php symfony doctrine:build-model
$php symfony doctrine:build-forms
$php symfony doctrine:build-filters
$php symfony doctrine:build-sql
$php symfony doctrine:insert-sql

上手くいっているか確認
$mysql -uroot -ppassword
mysql>USE sf14
mysql>DESCRIBE page;

こんな感じで作れていればok
+------------+--------------+------+-----+---------+----------------+
| Field      | Type         | Null | Key | Default | Extra          |
+------------+--------------+------+-----+---------+----------------+
| id         | bigint(20)   | NO   | PRI | NULL    | auto_increment |
| title      | varchar(100) | NO   |     |         |                |
| body       | longtext     | NO   |     | NULL    |                |
| category   | varchar(32)  | NO   |     |         |                |
| created_at | datetime     | NO   |     | NULL    |                |
| updated_at | datetime     | NO   |     | NULL    |                |
| slug       | varchar(255) | YES  | UNI | NULL    |                |
+------------+--------------+------+-----+---------+----------------+
mysql>exit;



5.初期データの挿入
初期データの設定
$vim data/fixtures/fixtures.yml
以下を加える(長いので途中省略)
Page:
  TopPage:
     title:       トップページ
     slug:        top
     category:    ~
     body:        トップページのコンテンツです。
   AboutPage:
     title:       Symfony楽団について
     slug:        about
     category:    ~
     body:        Symfony楽団の紹介ページです。
・・・

データ挿入!
$php symfony doctrine:data-load
できてるか確認
$mysql -uroot -pwintermine
mysql>USE sf14
mysql>SELECT title, created_at FROM page;

こんな感じになればok!
+---------------------------------------------------------------------+---------------------+
| title                                                               | created_at          |
+---------------------------------------------------------------------+---------------------+
| トップページ                                                        | 2012-06-22 22:18:23 |
| Symfony楽団について                                                 | 2012-06-22 22:18:23 |
| メンバー募集                                                        | 2012-06-22 22:18:23 |
| Symfony楽団のホームページがオープンしました                         | 2010-10-15 00:00:00 |
| 2010年定期演奏会のご案内                                            | 2010-11-15 00:00:00 |
| Symfony楽団と一緒に新年を迎えよう!                                 | 2010-12-06 00:00:00 |
| 2011年の活動に向けて、メンバーを募集しています                      | 2010-12-20 00:00:00 |
| 2010年の定期演奏会が無事終了しました                                | 2010-12-21 00:00:00 |
+---------------------------------------------------------------------+---------------------+

うーん、このブログでのデータベースの表示が上手くいきませんね^^;
&lt;&lt; 前のページ 次のページ &gt;&gt;
Calendar
03 2026/04 05
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
Profile
HN:
ちろ
性別:
非公開
自己紹介:
お先まっ暗な大学生
Search
No good words
http
www.
co.jp
.com
忍者ブログ [PR]