nazolabo

フリーランスのWebエンジニアが近況や思ったことを発信しています。

symfony2

Symfony2の認証(access_controlとrole_hierarchy編)

Symfony2のユーザーには、権限のレベルを細かく設定できます。ここでの説明には、Entity経由でログイン編のソースを使います。権限を確認するために、アクションを1つ追加します。Controller/DefaultController.php ... /** * @Route("/user/sugoi") * @Tem…

Symfony2の認証(Entity経由でログイン編)

おそらくほとんどの人が実現したいと思う、Userテーブルの情報からログインをする方法を考えてみましょう。今回は、NazoUserBundleというサンプルバンドルを作り、そこで作業します。 chmod -R 777 app/cache app/logs php app/console generate:bundle --na…

Symfony2でAnnotationを書くときの注意

Symfony2で、EntityなどをAnnotationで手書きする際、 /* * @var string $name * * @ORM¥Column(name="name", type="string", length=255) */ private $name; これは反映されません。 /** * @var string $name * * @ORM¥Column(name="name", type="string", …

Symfony2で、Entityと連動しない場合にFormの値を取得する方法

createFormの第二引数にEntityを入れると、そのEntityに値が勝手に入るけど、それじゃEntityを使わない場合にFormの値ってどうやって取るの?という話。まあとても簡単で、$form->getData()で、全データがarrayで返ってきます。 $data = $form->getData(); $…

Symfony2で、created_at/updated_atを自動で使う方法

Symfony2で、Entityにcreated_at/updated_at(作成日時/更新日時)を自動で入れる方法普通にやるとLifecycle Callbackを使うことになるのですが、こんなの毎回書くのは面倒なので、一発でどうにかしたいです。 Doctrine Extensions(DoctrineExtensionsBundle…

Symfony2でアップロードされたファイルを設置する方法

いやファイルアップロードは前回の説明を見れば大体わかるんだけど、データの保存先をどうするの?的な話。アップロードされたファイルは DBに入れる どこかに移動する の2パターンしかなくて、前者はまあどうでもいいんだけど、問題は後者。symfony1だと、…

Symfony2のフォーム(Form)の使い方

Symfony2のフォームは、かなり使いやすくなっています。 1はModelとの依存が激しくて、凝ったことをしようとすると意味不明になりましたが、2は完全に切り離されており、かつ依存させることも可能になっています。パッと使う action側 $this->createFormBuil…