2

Phalcon を支持して Symfony を捨てたので、フォーム テンプレートに関する問題に出くわしました。

たとえば、フィールドが次のようにレンダリングされることを理解しています。

{{ text_field("name", "size" : 30) }}

{{ submit_button("Save") }}

このフィールドにクラスを適用する場合は、次のようになります。

{{ text_field("name", "size" : 30, "class" : "classForField") }}

{{ submit_button("Save", "class" : "btn btn-success") }}

ただし、アプリの何百ものフィールド、ボタンなどに対してこれを行うと、特に何らかの理由で「text_fields」だけの Css クラスを変更することにした場合は、非常に面倒です。

Symfony では、テンプレート ファイル内のすべてのフィールドの基本的なテンプレートを定義し、オーバーライドされない限り、すべてのフォームで使用されます。

多くのサンプル プロジェクトとドキュメントを調べましたが、Phalcon でそのような機能を見つけることができません。これが間違った用語を探しているだけで、誰かが私を正しい方向に向けてくれることを願っています.

具体的には、要素に Bootstrap クラスを適用したいと考えています。

4

1 に答える 1

2

Phalcon\Formsを使用することもできます。

オブジェクトを使用Formして、フォームを宣言、生成、および検証できます。手動の例に基づいて、次のForm::addようにフィールドに属性を追加できます。

$this->add(new Text("name", array(
    'maxlength' => 30,
    'placeholder' => 'Type your name',
    'class' => 'css classes'
)));

これらのフォームの操作を習得するには、特にサニタイズと検証に進むときに時間がかかります。\Phalcon\Forms\Element\*とにかく、デフォルトの css を宣言できる ですべてのフィールドの拡張機能を作成し、フォームでの要素作成中と後で Volt テンプレート中にそれらを調整できるようにすることをお勧めします。

于 2015-03-11T15:02:00.550 に答える