2016-12-28 10 views
1

'具体的な'認証タイプのform.phpファイルを上書きしようとしています。私は、/ application/authentication/concreteディレクトリにform.phpファイルを置いても、私のテーマのパッケージディレクトリの中からform.phpファイルを置くことはできません。パッケージ内の認証タイプのform.phpを上書きする

<?php foreach ($activeAuths as $auth): ?> 
    <div data-handle="<?= $auth->getAuthenticationTypeHandle(); ?>" class="authentication-type authentication-type-<?= $auth->getAuthenticationTypeHandle(); ?>"> 
     <?php $auth->renderForm($authTypeElement ?: 'form', $authTypeParams ?: array()); ?> 
    </div> 
<?php endforeach; ?> 

(renderFormメソッドの2番目のパラメータを置き換えて)別のフォームをロードしようとすると、何も起こりません。

どのようにオーバーライドを認識しているのですか?

+0

パッケージ内の正確なパスは何ですか? –

+0

'$ activeAuth'とは何ですか? –

+0

パスは/ applicationディレクトリのパスと同じです:/ packages/package_handle/authentication/concrete –

答えて

1

できません。私はそれを行う必要があるパッケージを開発しました。パッケージからオーバーライドすることはできません。あなたはアプリケーションディレクトリからそれを行う必要があります。

パッケージには、変更されたフォームをパッケージのディレクトリからアプリケーションにコピーする「インストール」オプションがあります。

+0

残念ながら、これは正解と思われます。 –

+0

はい私はそれが吸うことを知っています。 これはいいですが、なぜフォームをオーバーライドする必要があるのですか? –

+0

スタイリングは高度にカスタマイズする必要がありました。私はクリーンなビューを持ち、すべてのBSスタイルをリセットする必要はありません。また、ラベルをJSなしで引き離すのが難しいアイコンで置き換えなければならなかった –

関連する問題