symfony PHPフレームワークpart2
Symfony2のフォームについて教えてください。
一覧画面の各レコードの端にチェックボックスを置き、
チェックされたものを、一覧の下に用意した削除ボタンで一括削除、
というような事をしたいのですが
フォームをどのように作ればいいんでしょうか。
当然ながら削除チェックボックスは、永続化するものではありません。
(1) 削除対象のエンティティ&そのフォーム
(2) (1)に、削除チェックボックスを足したVO&そのフォーム
(3) (2)の配列を持つVO&そのフォーム
こんな感じで3重の入れ子にすればいけるかな、と思ったんですが
(2)の段階で既に画面表示がエラーになり、
考え方がおかしいのか、どこかで実装ミスしてるだけなのか判断できず困ってます。
そもそも↑この構成が面倒くさすぎるので、もっと簡単にやれれば嬉しいのですが。 Symfony+Aptana(Eclipse)で開発しています。
AptanaにSymfonyコマンドを登録してやっているのですが、
他のSymfonyプロジェクトにエクスポートして持って行くと
うまく動いてくれなくて、結局手作業でパスなどを修正しています。
なにかうまく動かす方法はないでしょうか? security.ymlについて質問させてください。
OpenPNE上で開発をしているのですが、$base_url/member/$idに対して、
URLの$idがどんな整数を受け取っても認証させるようにするにはどのように設定ファイルを書けばよいのでしょうか?
それとも複数のURLに対してまとめて設定するのは不可能なのでしょうか?
memberモジュール内で、
all
is_secure: false
$id
is_secure: true
credentials: admin
のようにしたいのですが、webや過去ログを見てもそれらしいものが無かったので、
ご存知の方がいらっしゃいましたら、お知恵をお貸しください。 すみません、symfonyで画像ファイルをデータベースに保存するのはどういう書き方になるのでしょうか?
Openpneの開発なので、file_binテーブルに入れる形にしたいです
どなたかDQLの書き方をお教え下さい
以下、結果は同じですがDQLでの指定がわからず…
SELECT * FROM Table1, Table2 WHERE Table1.id = Table2.id
SELECT * FROM Table1 JOIN Table2 WHERE Table1.id = Table2.id $q->from('Table1 t1')->addFrom('Table2 t2')->where('t1.id = t2.id')
$q->from('Table1 t1')->innerJoin('Table2 t2')
とか。 まちがえた
$q->from('Table1 t1')->addFrom('t1.Table2 t2')->where('t1.id = t2.id')
$q->from('Table1 t1')->innerJoin('t1.Table2 t2')
かな。 それってDQLじゃないんじゃ?
$q = $em->createQuery("SELECT t1, t2 FROM Table1 t1 INNER JOIN t1.Table2 t2 WHERE t1.id = t2.id");
かな?
間違ってるかもしれない
誰かフォローよろw >>333,334,335,336
皆さん有り難うございました
doctrineはバージョン違うとかなり違うんですね… 度々スイマセン。
みなさんのお陰でJOINしたデータの取得が出来ました。
しかし、twig(Symfony2使ってます)にJOINされたデータの表示が出来ず…。
t1のデータはtest.idなどので表示できるのですが変数が分からず…t2ができないのです。
どなたか教えていただけませんでしょうか。
$q = $em->createQuery("SELECT t1, t2 FROM Table1 t1 INNER JOIN t1.Table2 t2 WHERE t1.id = t2.id");
$test = $q->getResult();
return $this->render('TestTest1Bundle:Default:index.html.twig', array('test' => $test)); >>338
まずdoctrine2が返してる生の$testの中身を見るべき。
テスト書くか、やり方わからなかったら最悪twigに渡す前の段階でvar_dumpとかでもいいから。 >>339
アドバイスありがとうございます。
中身を見て、t2のidが取得できていることは確認できました。
ただ、やはり変数が不明です。 基礎的な部分だと思うので恐縮ですが、
どなたかご教授を…
sfFilterを継承したフィルタを自作しているのですが
フィルタの中でユーザーがログインしてるかどうかで
処理を分けたいのですが、
フィルタの中でどうやったらmyUserのインスタンスを
取得できるでしょうか… sfContext::getInstance()->getUser() >>345
お礼が遅くなりましたが、うまくいきました。
ありがとうございました。 symfony2劣化してないか?
なんでいちいちテンプレートの呼び出し指定しなきゃいけないんだよ
@Templateだとか$this->renderとか Symfonyユーザー会のSymfony本(1.4ベース)とSymfony2のオンラインドキュメント
を見始めたけど、違いすぎて泣ける。
cakePHPとかRuby on Railsとか他のは使ったことがないけど、
ここまで変更が大きいのってWeb application Frameworkでは普通のこと?
Twigも2.0からの新機能?なのかもしれないけど、テンプレートの書き方も
ぜんぜん違うし・・
2.0覚えても、3.0になったらまた別物になるんだろうな・・・orz >>348
2.0は完全に別物だな。
ただdjangoとかからの影響大きいから、そっち触ってればある程度わかるかもしれん。
軽くなったのはいいが、中規模までの開発効率はいいとはいえん。
よほどphpで自分用の勝手のいいライブラリを持ってたりしない限り、
php捨てて他の言語のフレームワーク移ったほうがいいかもしれんな >>349
ありがとう
やっぱりこれは別物というくらいの変更ですか・・
自分ひとりで作るサイトで、PHP限定の縛りもないので
Djangoとか見てみます。
symfony2 ゲキ難関
symfony1ですら、難しかったのに、
そもそも、symfonyのエンジニア集まらないだろ。
だから開発コスト高いよ。 俺、元社労士で現エンジニアだけど、
プログラマーの単価は、通常の1.5倍ぐらいはあっていいと思うよ。
平均年収が450万円だったら675万ぐらいはもらっていいと思う。
学習量半端ないな。 CAKE覚える→CAKEつかわね
ZEND覚える→ZENDつかわね
Symfony覚える→これからはSymfony2の時代です。
そのほか環境面を合わせてどれだけ、走ればいいんだ?会社でかねだしてくれないし。 これまでの学習内容IT版
【実務】
PHP、SQL、DBチューニング、サーバー技術、ネットワーク技術、
Shell、セキュリティ技術、各種端末ツール、統合開発環境(Eclipse、Dreamweaver)
CAKE、ZEND、Symfony、JAVASCRIPT、AJAX、Jquery、PHPUnit、FlashActionScript
PHPunit等テストツール、PHPDocumentor等資料作成ツール、VISIO、XML、XSLT、DHTML、HTML、CSS
VisualStudio、ExcelVBA(ドキュメント効率化)、バックアップ技術(GIT、SVN、CVS)
WEBサーバ技術(Apache、IIS等)、各種設計技術(UML、DFD、業務プロセスフロー、プログラムフローチャート、
WBS、ERD、外部設計、要件定義)、ハードウェア技術、OS技術(Unix、Linux、Windows、Mac)
WEBブラウザ技術(GC、IE、FF、SF&各種アドイン)・・・・
【資格】
情報セキュリティスペシャリスト、ソフトウェア開発技術者、基本情報技術者
CCNP、CCNA、LPIC−LV2+LV1、WEBデザイン技能検定2級、OracleSilver+Bronze
VBAエキスパートスタンダード、WEBプログラミング+WEBクリエイター能力認定試験両方上級
情報処理能力検定1級、Cプログラミング1級、簿記検定2級、中小企業診断士4科目合格(運営・経情・財務・法務)
FP3級、MCA1科目、MOS上級1科目、ビジ法2級、社労士← 俺、元LSIエンジニアで現いわゆるSEだけど、
もっともらっていいはず、と思って辞めたわ。
数学、物理、回路設計技術の下地が必要な上に、
ハードウェア記述言語、各種開発・シミュレータツール、アセンブリ言語、C言語、補助的に使うスクリプト言語・・・
ただ、モノが売れないことには給料が出ないんだよ。
いまやどこのモノづくりメーカーもリストラの真っ最中。
結局、個人にしても企業にしても、いくら知識やリソースを溜め込んだところで
使いこなして生き残ることができなければ意味が無いんだよな。。 >>351
難関ってことはない。
ただ、開発効率があまり宜しくないだけ >>356
自分で運営から開発までやりゃいいんだよ。
今ヒットしてるサービスってプログラマが一人で
やってたのが大きくなっちゃったってやつが多いじゃん。 symfony1系は不細工だけど気が利く娘
2系はパリコレで活躍できるが、地元の看板娘には使いづらいスーパーモデル。 symfony2でwebデバッグツールバーがapp_dev.phpの画面に表示されないんだけど、表示されるようにするにはどこで設定すればいい? >>360
ビューの指定でbase.html.twigをextendsしたら出た気が。 symfony2が最強だな
小規模でも使えるのがいい やばい。まじでやばい。
ちょっと助けてほしいのだけど「symfony cc」をしたら、
サーバが500エラーを返す様になってしまったのだけれども、
どうか神様お助け頂けませんでしょうか。 久しぶりにPHPの世界、symfony1.xに戻ってきました。
かれこれ昔のソースを3時間ほどいじくってますが、
layout.phpを修正して「symfony cc」してもレイアウトが変わりません。
それと、index.phpが呼ばれたときはどのアクションが呼ばれるのでしょうか?
1年ちょいで痴呆が始まったようです;;
どなたかお助けを。 routing.ymlだな。ちょっと思い出してきた。 レイアウトもOK!余計なテンプレート作ってたみたい。スタイル悪すぎ。 symfony2はもう駄目だな。
services.xmlとかもう、設定ファイルだらけでJavaの古いクソフレームワークに退化してるわ
ymlかアノテーション使えば?
Symfobyは使いこなせもしてないのに遅いだの、わかり辛いだの言う人が多い印象
他のFWはもっとひどいぞ… >>370
>ymlかアノテーション使えば?
アノテーションやymlは設定じゃないとでも思ってるのか?
修正・追加依頼が多いクライアントの案件でこいつを使うのは
実務者全員が死を見ると思うんですけど むしろそういう案件向けのFWでは?
他のFWは融通きかなさすぎだし Symfony2インストールしてweb/app_dev.phpのページを開いたらエラーがでた
Notice: include(): 1. h->opened_path=[null] h->filename=
[/var/www/Symfony/vendor/symfony/symfony/src//Symfony/Component/ClassLoader/DebugClassLoader.php]
in /var/www/Symfony/vendor/composer/ClassLoader.php on line 150 Call Stack: 0.0013 331164 1. {main}()
...
...
あとずっと同じような文が続いてる
環境はWin764bitでVirtualBox内のUbuntu12。
config.phpはちゃんと表示されてる。
Symfony2何回か入れなおしてるけど特に表示変わらず。
別PCではすぐWelcomeページ表示されたんだが、今回のエラー初めて見るのでわからない。
誰か教えて欲しい・・・ 1.4(Doctrine)なんですが、作ったモジュールを削除するにはどうすればいいですか?
アクション、モデル、スキーマ、フィクスチャ、フォーム、フィルターを手作業で消しましたが
全てのモデル等を再構築しようとすると、SQLからDB作る時点(?)でエラーになります。
(Not Found DELETED_MODULE みたいなエラーが出る) 1だとForm周りの作りが酷かったけど
2はマシになったのか? >>375だけど解決した。
APCのインストールをミスってたらしい・・・
インスコし直しで解決しました
>>378
1より改善されていて、2はModelと切り離して作れるようになった ってどっかに書いてあった 1.4です。
テンプレートの国際化の際、URLにcultureを含めないで
実現する方法はありませんか? Symfony2 で、全Controllerに共通処理させたいんだけど、どうやればいいの?Listnerが正解? Symfony2にいたっては、終わるどころか始まることさえなかった >>382
Listenerですね。ユーザー会の誰かがブログに書いてた。 こういうやりとり見てると、やっぱSymfonyの完成度って低いと思っちゃうんだよねー そもそもsymfony以前の問題だから。
PHP自体捨てられつつあるし やっぱRailsなん?
仕様変わりすぎで、メンテコスト高そうなんだが。
symfony信者でいいから、質問の回答を早く頼む やっぱ時代はdjangoかpyramidだろw
>>382
効率的なWebアプリケーションの作り方という本では、バンドル内にAppControllerを作って
自前コントローラをサブクラスにするやり方も載ってた気が >>392
AppControllerを作成して継承する場合、
全てのControllerに共通の処理をさせるには
コンストラクタに記述するってことであっていますか?
ltsもでるしsymfonyほどまともなfwないじゃん
単に日本のPHP技術者のレベルが低くては日本では流行らないだけで まぁ、いろいろ見たけどMVCとしての完成度は群を抜いて高いんじゃないか?
あ、2のほうな
ただ、現実的な問題として、これをいじれるような大きい案件
俺は受注できねぇんだよw 少なくともPHPの中では一番まともだなsymfony2は
使わないけど
例えば、どれと比べてsymfonyがまとも?
symfonyにできてCakeにできないところって? >>399
できるだけなら素のPHPでもできる
それにFWとしての側面はsymfony2の一部でしかないし
小規模ならsilexもあるし、作りとしてはsymfony2以外選択肢ない
Zendくらい 抽象度が高い構造を持ってることと
他と比べて厳しめの規約を持っているってことだな。
まあ、規約を知るコストはあるし、
自分ルールで書きたくなる衝動を押さえるのがすごく歯がゆいこともあるが、
メンテはしやすいよ。
まあ、短期で作り捨てしてる人には向いてないが、
アクタが多数だったりする規模で、長期に手を入れていく場合に向いてる。
LTSもあるしね。 >>400
何が言いたいのか良く分からん。
なぜSymfony2以外に選択肢がないのかの説明を明確にして欲しい。
Zendはもっとたいしたことないし。 >>401
Zendもそうだけど、抽象化の度合いが無駄だと思う。
まぁsymfonyは、Zendほど無駄じゃないけど。
学習コストが高過ぎるよね。ほとんどの人はsymfonyの思想を理解できずに、オレオレ実装しちゃって、
仕様が入り混じって、ただでさえパスタなのに更にパスタになってる。
だったらsymfony使わずにオレオレ実装だけで作って貰った方がメンテしやすいシステムをいくつか見てきた。 つまり、Zendもsymfonyもダメなのは、抽象化が作者の趣味の領域になってると思われる点。
信者は盲信してるから、死後の世界を信じて苦行にも耐えるけど、まともな人間はとっとと見捨てる。 しかしZendは本当に使う価値がない。
Webアプリを作る上で最も重要なパーツは、FormとDBなのに、この2つが、あってもなくてもどうでもいい機能しかないんだよな。
不必要な機能ばっかりワンサカとある。 そういう意味ではDispatchしか使い道がないCIと価値は等価。 >>403
日本のPHPerは使いこなせないのが多いだろうね
cakephpはひどすぎるけど日本じゃ人気 日本は回線は世界一なのに開発者は低レベルだからな。
PHPユーザに限らず。
とりあえずPHPはさっさとマルチスレッドを実装しろ >>407
例えばCakeのどこがひどい?
い一番ひどい所を教えて。 >>408
日本の開発者のレベルは意外と高いよ。
同じ国にいるのと、日本人のネガティブカルチャーが、同民族を貶めたいと思う気持ちで、そう思わせるだけ。
底辺のレベルはアメリカだってひどいよ。 >>410
高くねーよ
例えば日本発のフレームワークで世界に使われてるものって何?
他に比べて高いってんならそう判断できるソースを 仮に開発者のレベルが高かったとしても
リーダーを名乗って複数人束ねて外に表現していく能力は日本は低めなので
フレームワークのたとえはよろしくないかな。
あとそもそも学力低めの人がネットで文字書くのは日韓くらいだから
ネットだけ見てると日本のレベルが低く見えてくるってのもあるかもね。
>>411
なんで基準がPHP用のフレームワークなんだよ(苦笑
基準そのものが低いだろ…トホホ
日本発で開発的に使われてるプログラミング言語はあるけど、中国、韓国、インド、ドイツ、フランス、イギリス発で世界的に使われているプログラミング言語ってあったっけ?
日本人はフルスクラッチでOSを開発したけど、中国、韓国、インド、ドイツ、フランス、イギリスで開発されたOSってあったっけ? >>412
君の書く日本語の方が、レベルが低くて心配だよ… >>410
たぶん日本人開発者は平均的には他国の多くより上だろうと思う。
上は弱そうだよね。
別に頭が悪いんじゃなくて、やったるぜーがないというか。
自分もないですorz >>349
>よほどphpで自分用の勝手のいいライブラリを持ってたりしない限り、
>php捨てて他の言語のフレームワーク移ったほうがいいかもしれんな
これはsymfonyがPHPフレームワークで最強って言いたいんでしょうか?
そんなこと手嶋屋が看過しませんよ!!しませんからねっ! どなたか教えてください。
Ver1.4です。スキーマでmail,passwordを定義、
フォームでmail,password,re_passwordを作りました。
DBにはre_passwordを入れたくないのですが、どうすればいいでしょうか?
よろしくお願いします。 そういうくだらない問題を解決しなきゃいけないから、symfonyってホント駄目だと思うね…
ちなみに1.4系は1.2ほど使ってる人がいないから、解決策知ってる人が果たして現れるかどうか… 試しにアクションでre_passwordを追加しようと思ってフォームからre_passwordを消したのに
php symfony doctrine:build --all --and-load --no-confirmation
してもBaseフォームやschema.sql、DBにre_password(64)が作られる謎の現象が発生・・・。 それは使う側からみると謎の動作だけど、開発者側から言わせれば、仕様通りの動作なんだろうなぁ。 schema.yml → モデル、フォーム、DB が作られるのかと思ってましたけど、
他にもモデル、フォーム等を作るのに参照されているファイルってあるんですか?