タグ付けされた質問 「symfony」

symfonyは、Webアプリケーションを構築するためのPHPフレームワークと、フレームワークが構築される一連のコンポーネントの両方を指します。このタグは、現在サポートされているメジャーバージョン2.x、3.x、4.x、および5.xを参照しています。または、それぞれのタグを使用して正確なバージョンを指定できます。このタグはSymfony 1.xに関する質問には使用しないでください。代わりにSymfony1タグを使用してください。

4
Symfony 2 EntityManagerインジェクションインサービス
独自のサービスを作成し、Doctrine EntityManagerを挿入する必要がありますが、それが__construct()サービスで呼び出されていることがわかりません。インジェクションが機能しません。 コードと構成は次のとおりです。 <?php namespace Test\CommonBundle\Services; use Doctrine\ORM\EntityManager; class UserService { /** * * @var EntityManager */ protected $em; public function __constructor(EntityManager $entityManager) { var_dump($entityManager); exit(); // I've never saw it happen, looks like constructor never called $this->em = $entityManager; } public function getUser($userId){ var_dump($this->em ); // outputs null } …

3
テンプレートでログインしたユーザーにアクセスする
ユーザー登録を始めるためにFOSuserbundleを使用していますhttps://github.com/FriendsOfSymfony/FOSUserBundle 登録/ログイン/ログアウトしました。私が今したいのは、ログインしているユーザーのデータを取得して、サイトのすべてのページに表示することです。ヘッダータイプの「Hi username」のように。 私のapp / Resources / views / base.html.twigにコントローラーを埋め込むように思えますhttp://symfony.com/doc/current/book/templating.html#embedding-controllers そこで、ユーザープロファイルデータにアクセスするためのコントローラーを作成しました。わからないのは、組み込みコントローラーのFOSメソッドにアクセスする方法です。私のAcme / UserBundle / Controller / UserController.phpから、これを実行します。 public function showAction() { $user = $this->container->get('security.context')->getToken()->getUser(); if (!is_object($user) || !$user instanceof UserInterface) { throw new AccessDeniedException( 'This user does not have access to this section.'); } return $this->container->get('templating') ->renderResponse('FOSUserBundle:Profile:show.html.'.$this->container ->getParameter('fos_user.template.engine'), array('user' => …

9
Symfony2リクエストオブジェクトのPOST値にアクセスする
はい、これは初心者の質問ですが、どこにも答えが見つかりません。Symfony2のコントローラーで、フォームの1つからPOST値にアクセスしたいと思います。私が持っているコントローラーでは: public function indexAction() { $request = $this->get('request'); if ($request->getMethod() == 'POST') { $form = $this->get('form.factory')->create(new ContactType()); $form->bindRequest($request); if ($form->isValid()) { $name_value = $request->request->get('name'); 残念ながら$name_value何も返されません。何が悪いのですか?ありがとう!
93 php  symfony  http-post 

1
カスケード= {「削除」} VS orphanRemoval = true VS ondelete = "CASCADE
親エンティティが削除されたときに自動的に子エンティティを削除するために、以下の方法についていくつかの情報を収集しようとしました。最も一般的な方法は、cascade = {"remove"} OR orphanRemoval = true OR ondelete = "CASCADE"の 3つのアノテーションを使用することです。 私は3番目のものについて少し混乱しています:ondelete = "CASCADE"、これに関する教義の公式ドキュメントの説明は非常に少ないため)、私が収集した以下の情報を誰かが私に確認し、私の研究から理解できれば幸いですネットと経験... 何をする Cascade = {"remove"} ==>所有側エンティティがある場合、反対側のエンティティは削除されます。あなたが他の所有する側の実体を持つmanytomanyにいる場合でも。 -コレクションで使用する必要があります(OneToManyまたはManyToMany関係で)-ORMでの 実装 orphanRemoval = true ==>所有側エンティティがANDであり、他の所有側エンティティに接続されていない場合、反対側のエンティティは削除されます。( ref。doctrine official_doc -ORMでの実装-OneToOne、OnetoManyまたはManyToManyで使用できます onDelete = "CASCADE" ==>これにより、データベース内の外部キー列にOn Delete Cascadeが追加されます -この戦略は、正しく理解するのが少し難しいですが、非常に強力で高速です。( ref。doctrine official_doc ...しかし、これ以上の説明は読んでいません)-ORM は(以前の2つの方法と比較して)必要な作業が少ないため、パフォーマンスが向上します。 その他の情報 -これらの3つの方法はすべて双方向関係エンティティに実装されています(そうですか???)。 cascade = {"remove"}を使用すると、外部キーonDelete = CASCADEが完全にバイパスされます。(参考文献doctrine_official_doc) コードでの使用例 orphanRemovalおよびcascade = …

3
Symfony2とDoctrine-エラー:無効なPathExpression。StateFieldPathExpressionである必要があります
次のようなエンティティがあります。 /** * @Gedmo\Tree(type="nested") * @ORM\Table(name="categories") * @ORM\Entity() */ class Category extends BaseCategory { /** * @ORM\OneToMany(targetEntity="Category", mappedBy="parent") */ protected $children; /** * @Gedmo\TreeParent * @ORM\ManyToOne(targetEntity="Category", inversedBy="children") * @ORM\JoinColumn(name="parent_id", referencedColumnName="id", onDelete="SET NULL") */ protected $parent; } そして、私はこのようなクエリを実行しようとしています: $qb = $this->em->createQueryBuilder() ->select('c.parent') ->from('Category', 'c'); $result = $qb->getQuery()->getArrayResult(); ただし、次のエラーが発生します。 [Semantical Error] ... …

12
ファイルシステムでクラスを移動した後の「クラスXXXは有効なエンティティまたはマップされたスーパークラスではありません」
Aib \ PlatformBundle \ Entity \ User.phpにエンティティクラスがありました 私はフォームクラスを作成しようとして問題はありませんでした php app / console doctrine:generate:form AibPlatformBundle:User 名前空間をAib \ PlatformBundle \ Entity \ Identity \ Userに変更しましたが、タスクでフォームを生成しようとすると、次のように言っています。 「クラスAib \ PlatformBundle \ Entity \ Userは有効なエンティティまたはマップされたスーパークラスではありません。」 これはファイルの内容です: <?php namespace Aib\PlatformBundle\Entity\Identity; use Doctrine\ORM\Mapping as ORM; /** * Aib\PlatformBundle\Entity\Identity\User * * @ORM\Table() * @ORM\Entity(repositoryClass="Aib\PlatformBundle\Entity\Identity \UserRepository") */ class User …


2
新しいSymfony 3のディレクトリ構造は何ですか?
通常のcomposerコマンドで新しいSymfony 2.5プロジェクトを作成しました: php composer.phar create-project symfony/framework-standard-edition path/ 2.5.0 ターミナルは私に尋ねます: Symfony 3のディレクトリ構造を使用しますか? このSymfony 3のディレクトリ構造は何ですか?私はこれまでに見たことがありません... 2.5から新しいですか? それを使用する利点は何ですか? このディレクトリ構造を複製する方法はありますか?
90 symfony 

5
symfony2コントローラーでJSON応答を送信するにはどうすればよいですか?
にjQuery組み込まれているフォームの編集に使用していますSymfony。 フォームをjQueryダイアログに表示して送信します。 データがデータベースに正しく入力されています。 しかし、私はいくつか送信する必要があるかどうか分からないJSONの背中をjQuery。実際、私はJSON物事に少し戸惑っています。 「jQuery」を使用してテーブルに行を追加し、フォームを送信した後、データが送信された後、それらの行データを送り返して、テーブル行を動的に追加して追加されたデータを表示できるようにするとします。 どうすればそのデータを取り戻すことができるのか混乱しています。 これは私の現在のコードです: $editForm = $this->createForm(new StepsType(), $entity); $request = $this->getRequest(); $editForm->bindRequest($request); if ($editForm->isValid()) { $em->persist($entity); $em->flush(); return $this->render('::success.html.twig'); } これは成功メッセージを含むテンプレートです。
90 php  javascript  json  symfony 


12
Symfony 2.0 AJAXアプリケーションでDoctrineエンティティをJSONにエンコードする方法は?
ゲームアプリを開発していて、Symfony 2.0を使用しています。バックエンドへのAJAXリクエストがたくさんあります。そして、より多くの応答がエンティティをJSONに変換しています。例えば: class DefaultController extends Controller { public function launchAction() { $user = $this->getDoctrine() ->getRepository('UserBundle:User') ->find($id); // encode user to json format $userDataAsJson = $this->encodeUserDataToJson($user); return array( 'userDataAsJson' => $userDataAsJson ); } private function encodeUserDataToJson(User $user) { $userData = array( 'id' => $user->getId(), 'profile' => array( 'nickname' => $user->getProfile()->getNickname() ) …

4
Symfony 2.8、3.0以降のbuildForm()にデータを渡す
私のアプリケーションは現在、この回答で推奨されているように、コンストラクターを使用してデータをフォームタイプに渡します。ただし、Symfony 2.8アップグレードガイドでは、型インスタンスをcreateForm関数に渡すことは非推奨であるとアドバイスしています。 型インスタンスをForm :: add()、FormBuilder :: add()およびFormFactory :: create *()メソッドに渡すことは非推奨であり、Symfony3.0ではサポートされなくなります。代わりに、そのタイプの完全修飾クラス名を渡します。 Before: $form = $this->createForm(new MyType()); After: $form = $this->createForm(MyType::class); 完全修飾クラス名でデータを渡すことができないので、別の方法はありますか?
87 php  symfony 

17
EntityManagerが閉じています
[Doctrine\ORM\ORMException] The EntityManager is closed. データの挿入時にDBAL例外が発生した後、EntityManagerが閉じて、再接続できません。 このように試しましたが、接続できませんでした。 $this->em->close(); $this->set('doctrine.orm.entity_manager', null); $this->set('doctrine.orm.default_entity_manager', null); $this->get('doctrine')->resetEntityManager(); $this->em = $this->get('doctrine')->getEntityManager(); 誰かが再接続する方法を考えていますか?

4
「myBundleをasseticBundleconfigに追加する」symfony2例外を修正するにはどうすればよいですか?
TWIG{% javascript %}タグを使用して.jsファイルにリンクしようとすると、次の例外を除いて返されます。 An exception has been thrown during the compilation of a template ("You must add CompetitiongameBundle to the assetic.bundle config to use the {% javascripts %} tag in CompetitiongameBundle:game:index.html.twig.") in "CompetitiongameBundle:game:index.html.twig". 私のindex.html.twigように見えます: {% javascripts 'CompetitiongameBundle/Resources/views/public/js/*'%} <script type="text/javascript" src="{{ asset_url }}" ></script> {% endjavascripts %} Hello {{ name }}! …
84 php  symfony  twig 

1
Symfony2のTwigテンプレートエンジンにオブジェクトが存在するかどうかをどのように確認しますか?
一部のオブジェクトが存在し、他のオブジェクトが存在しない多次元配列があります。私は取得し続けます オブジェクト「stdClass」のメソッド「code」がに存在しません...? テンプレートで使用しているコードは次のとおりです。 {% for item in items %} <p>{% if item.product.code %}{{ item.product.code }}{% endif %}</p> {% endfor %} 一部の製品にはこのコードがありませんが、残念ながらこのデータ構造はフィードを介して提供されるため、変更できません。 Twigのドキュメントを見ると、オブジェクトまたはメソッドがない場合はnullが返されると解釈しました。
84 symfony  twig 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.