バージョン選択

フォーラム

メニュー

オンライン状況

26 人のユーザが現在オンラインです。 (17 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 26
もっと...

サイト内検索

プラグイン > 開発について > Form Extension で追加したフォームが認識されない

開発について

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
h_tanaka
投稿日時: 2020/10/21 9:22
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1065
Form Extension で追加したフォームが認識されない
EC-CUBE 3.0.10

Form Extension で追加したフォームが認識されません。

受注登録ページにフォームを追加するために、 OrderDetailType を拡張した OrderDetailExtention を作成しました。
EC-CUBE 3.0.18 では正常に動作したのですが、EC-CUBE 3.0.10 でエラーになってしまいます。
原因わかりますでしょうか?

Twig_Error_Runtime in Template.php line 584:
Method "Test" for object "Symfony\Component\Form\FormView" does not exist in "/Test/Resource/template/admin/order_detail_prototype.twig" at line 2

OrderDetailExtention.php
<?php
namespace Plugin\Test\Form\Extension;

use Symfony\Component\Form\AbstractTypeExtension;
use Symfony\Component\Form\FormBuilderInterface;

class OrderDetailExtention extends AbstractTypeExtension
{
    public $app;

    public function __construct($app)
    {
        $this->app = $app;
    }

    /**
     * {@inheritdoc}
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('Test', 'hidden', array(
                'required' => false,
                'mapped' => false,
            ));
    }

    /**
     * {@inheritdoc}
     */
    public function getExtendedType()
    {
        return 'order_detail';
    }
}


Event.php
public function onRenderOrderEdit(TemplateEvent $event)
{
    if (!$this->app->isGranted('ROLE_ADMIN')) {
        return;
    }

    $source = $event->getSource();

    $search = '{{ include(\'Order/order_detail_prototype.twig\', { \'orderDetailForm\': form.OrderDetails.vars.prototype }) }}';
    $replace = $search.'{{ include(\'/Test/Resource/template/admin/order_detail_prototype.twig\', { \'orderDetailForm\': form.OrderDetails.vars.prototype }) }}';
    $source = str_replace($search, $replace, $source);

    $event->setSource($source);
}


order_detail_prototype.twig
{{ form_widget(orderDetailForm.Test, {'type': 'hidden'}) }}
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

公式ストアEC-CUBE4系デザインテンプレート続々リリース中

統計情報

総メンバー数は68,753名です
総投稿数は99,640件です

投稿数ランキング

1
seasoft
7333
2
468
2821
3
AMUAMU
2712
4
nanasess
2123
5
umebius
1849
6
yuh
1612
7
red
1430
8
h_tanaka
1065
9
fukap
907
10
tsuji
864
11
shutta
835
12
tao_s
793
13 ramrun 789
14 karin 657
15 sumida 641
16
homan
633
17 DELIGHT 572
18
patapata
502
19
flealog
485
20 tonton 437


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.