バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > ご注文手続きのFormTypeのカスタマイズができない。

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
motokix
投稿日時: 2018/12/21 14:14
対応状況: 開発中
常連
登録日: 2018/10/9
居住地:
投稿: 42
ご注文手続きのFormTypeのカスタマイズができない。
[EC-CUBE] 4.0.0
[レンタルサーバ] Xserver
[導入プラグインの有無] ヤマトペイメント
[カスタマイズの有無]



下記のFormTypeのカスタマイズを参考にご注文手続きページのお問い合わせ項目を
拡張してみたところ呼びだすことができませんでした。

http://doc4.ec-cube.net/customize_formtype

<?php

namespace Customize\Form\Extension;

use Eccube\Entity\Order;
use Eccube\Form\Type\Shopping\OrderType;
use Symfony\Component\Form\AbstractTypeExtension;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Validator\Constraints\NotBlank;

class OrderTypeCusomizeExtension extends AbstractTypeExtension
{
    /**
     * {@inheritdoc}
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $options = $builder->get('message')->getOptions();

        $options['required'] = true;
        $options['constraints'] = [ new NotBlank() ];
        $options['attr']['placeholder'] = 'テスト';

        $builder->add('message', TextType::class, $options);
    }

    /**
     * {@inheritdoc}
     */
    public function getExtendedType()
    {
        return OrderType::class;
    }
}


ご教授いただければ幸いです。
468
投稿日時: 2018/12/30 10:55
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 1746
Re: ご注文手続きのFormTypeのカスタマイズができない。
提示いただいたソースを利用して確認してみましたが、
requiredオプションやconstraintsオプションについては、きちんとOrderTypeCusomizeExtensionクラスで定義した通り、反映されました。
placeholderオプションについては、twigのform_widget()の第2引数で指定されていると思いますので、
そちらが優先されているのではないでしょうか?

OrderTypeCusomizeExtensionクラスの処理内でexit;等を記述して真っ白な画面が表示されれば(処理が中断されれば)、
ちゃんと拡張処理は通っている事が確認できるかと思います。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

motokix
投稿日時: 2019/1/7 17:40
対応状況: −−−
常連
登録日: 2018/10/9
居住地:
投稿: 42
Re: ご注文手続きのFormTypeのカスタマイズができない。
引用:

468さんは書きました:
提示いただいたソースを利用して確認してみましたが、
requiredオプションやconstraintsオプションについては、きちんとOrderTypeCusomizeExtensionクラスで定義した通り、反映されました。
placeholderオプションについては、twigのform_widget()の第2引数で指定されていると思いますので、
そちらが優先されているのではないでしょうか?

OrderTypeCusomizeExtensionクラスの処理内でexit;等を記述して真っ白な画面が表示されれば(処理が中断されれば)、
ちゃんと拡張処理は通っている事が確認できるかと思います。


ありがとございます。確認したところ問題なく拡張処理が通っているのを確認できました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


ec-cube.co

統計情報

総メンバー数は45,180名です
総投稿数は91,772件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
nanasess
1894
4
468
1746
5
yuh
1584
6
umebius
1296
7
red
1282
8
fukap
907
9
tsuji
837
10
shutta
827
11 ramrun 789
12
tao_s
750
13
h_tanaka
730
14 karin 656
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
483
20 tonton 436


ネットショップの壺

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

Copyright© LOCKON CO.,LTD. All Rights Reserved.