問題タブ [zend-view]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
zend-framework - アプリケーション内のすべてのビューにZendViewHelperを追加する(ブートストラップ内)
Zend Framework 1.6を使用しているため、Zend_Applicationを使用していません。
シンプルで通常のViewHelper(Zend_View_Helper_Abstractを拡張)があります。アクションコントローラのビューに追加する限り、完全に正常に機能します。しかし、私はすべてのモジュールのすべてのビューでそれを使用できるようにしたいと思います。ブートストラップファイルでグローバルビューを取得してこれを行うのは簡単なはずだと思いました。
しかし、ブートストラップファイルで$viewオブジェクトを取得できないようです。私も試しました
しかし、それでもうまくいきません。Boostrap(フロントコントローラープラグイン)のpreDispatch()とpostDispatch()に入れてみました。
誰かがこれを行う方法について何か考えがありますか?とてもシンプルなはずなのに、2日経っても解決策が見つかりませんでした。
みんなありがとう:)アリ
php - ビューファイルの静的フォームから投稿された変数を取得する zend
わかりましたので、zendフォームを使用してみましたが、達成しようとしているのは、zendフォームを処理するには多すぎます。ビューファイルでフォームを使用することを選択した理由が理解できない場合は、解決策があるかもしれません。
データベースで製品を検索するためのフォームがあります。検索は、オートコンプリート (カスタムメイド) を使用して行われます。ユーザーが「製品をリストに追加」を押すと、製品がフォームの div に追加され、リストの印象が作成されます。これ (フォームに新しく追加された入力) をコントローラーに送信し、フォームを処理したいと考えています。これを行う方法がわからない、または不可能である、まだ手がかりがありませんが、zendフォームは非常に多くの頭痛の種であり、使用をやめようとしています。
だから私はビューファイルで静的フォームを設計しました。そこにjqueryのものがあり、データ(非表示の入力フィールドとチェックボックス)を追加し、コントローラーに投稿したいと思います。問題は、コントローラーで $_POST 配列を取得する方法です。
zend-framework - Zend Framework: bootstrap.php からビューを作成する方法
たとえば、私はecho $this->escape($this->test);
index.phtml と controller$this->view->test = 'test message';
にありますが、すべてのページ (コントローラー) にフォームを表示したいので、ブートストラップからこれを実行したいと考えています。
zend-framework - Zend でビュー ヘルパーを追加する方法
次のように zend フレームワークにカスタム ビュー ヘルパーを追加したい:
- このコードをapplication.iniに配置しました:
includePaths.library = APPLICATION_PATH "/../library"
を作成し、myproject ルートにライブラリ ディレクトリを作成します 。 - ライブラリ ディレクトリにビュー ヘルパー TabEntry.php を作成します。
class Zend_View_Helper_TabEntry extends Zend_View_Helper_Abstract {
public function TabEntry() {
}
} - ライブラリ ディレクトリに別のビュー ヘルパー TabEntries.php を作成します。
class Zend_View_Helper_TabEntries extends Zend_View_Helper_TabEntry {
public function TabEntries() {
}
} - 私のphtmlで $this->TabEntries() を使用すると、エラーが発生します
- Bootstrap.php に次のコードを追加します。
$view->addHelperPath('MyView/Helpers', "library_MyView_Helpers");
$viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('ViewRenderer'); $viewRenderer->setView($view);
zend-framework - 実際に出力するのではなく、Zendビューの出力をキャプチャする方法
問題:zendコントローラーでは、スクリプトを直接出力したくない場合がありますが、そのスクリプトのコンテンツが必要な場合があります。1つの例:クライアント側で処理するために、ビュースクリプトの結果のhtml出力をJSONやXMLなどの別の構造に含める必要がある場合。
私はここでスタックオーバーフローで結果を見つけましたが、それは別のコンテキストにあったのでそれほど速くはありませんでした。私はこれに2日間苦労しています。結局のところ、それは非常に単純でした。
これが明確で、誰かに役立つことを願っています。
php - ビュー ヘルパーが必要とするビュー スクリプトはどこに配置すればよいですか (Zend_View とデフォルトのディレクトリ レイアウトを使用)。
アクセス制御リストのエディターであるアプリケーションの比較的複雑な部分があります。いくつかの場所で再利用する必要があり、すべての ajax-y などをロードできるようにしたいと考えています。
頻繁に使用する必要があるため、Zend_View_Helper にしたいと考えています。これは簡単$view->setHelperPath(APPLICATION_PATH . '/views/helpers', 'Cas_View_Helper');
です。ビューのブートストラップを入れるだけで、ビュー ヘルパーの読み込みに関してすべてが設定されているように見えます。
ただし、実際にはビュー スクリプトを使用してヘルパーを出力する必要があります。それを置くべき標準的な場所はありますか?
php - zfを部分的に作成する方法
にパーシャル フォルダーをlayouts/scripts/partials
作成し、mypartial.phtml
. たぶん、これをより速く行うコマンドはありますか?
zf create partial
これは存在しないと思いますが、この手動の方法よりも似たようなものや速いものはありますか
php - zend ビュー: ブートストラップ (ビュー) またはブートストラップ (レイアウト)
これらは、ビューのブートストラップに関連するブートストラップの _init 関数の 2 つの異なる実装です。
すぐにビューを取得します。bootstrap('view')
次に、リソースとして取得します
もう 1 つは、レイアウトを介してより長いルートをたどります。bootstrap('layout')
コードが長いからといって、コードが非効率的であると判断したくはありません。すぐlayout
にヒットするのではなく、最初に通過することで追加されるものはありますか?view
php - zendプロジェクトのモジュールベースのフォルダ構造への段階的な変換
application
左側の通常のフォルダー構造(フォルダーが含まれているmodels,views,controllers
)から、モジュールベースのフォルダー構造(個々のモジュールが含まapplication
れているフォルダーが含まれている)に移行する方法について、段階的な説明を探しています。modules
自分のmodels,views,controllers
。
zendでは最初からモジュールアーキテクチャを使用してプロジェクトを作成できるとは思わないので、「変換」と言いますが、そうすると、それが膨らみ、これらのフォルダ構造を手動で変更する必要がなくなります。
これが私のこれまでの経験です
モジュールを作成する
zf create module product
と、modulesフォルダーが生成され、そのproduct
中にフォルダーが生成されviews,controllers,models
、そのモジュールのforも生成されます。ただし、メイン
views,controllers,models
をmodules/default
独自のフォルダーに移動する必要もあります。そのフォルダを手動で作成してメインをそこに移動すると、そのモジュールviews,models,controllers
に新しいコントローラを追加しようとするとバグが発生します。default
バグは、デフォルトのコントローラーフォルダーが手動でに移動されたことを認識しないため、メイン(現在は欠落している)を再生成し、その新しいコントローラーを挿入することです。views,controllers,models
application
application/controllers/newcont
application/modules/default/controllers/
それに対する私の解決策は
zf create module default
、メインをそこにコピーするviews,models,controllers
ことでした。それは同じように見えることになりますが、どういうわけかzf create module
方法は違いを生みます。このようにすると、新しいコントローラーが正しく追加され、追加されapplication/modules/default/controllers
ませんapplication/controllers
問題の半分は解決しました。しかし、アプリケーションを表示しようとすると、ビューから何も表示されませんindex/index
。エラーも発生しませんが、何も表示されません。index/index
ビューが移動したことをアプリケーションが認識していないためだと思います。
- これは以前は次の場所にありました
application/views/scripts/index/index.phtml
- しかし、現在はに位置しています
application/modules/default/views/scripts/index/index.phtml
application.iniまたはbootstrap.phpまたはその他の場所に変更を加える必要があると思います。では、これをスムーズに実行して機能させるための手順は正確には何ですか?最新のZF1.10.8を使用しています。正確な手順に混乱が生じないように、新しいzendプロジェクトの作成から始めてください。
php - ZendにはSmartyの{strip}のようなものがありますか?
Smartyには{strip}関数があります。
どの出力:
また、Smartyをインストールせずに、Zendでこれを実行したいと思います(各要求で送信されるバイトの量を減らすため)。
ただし、すべてのLayout / .phtmlファイルにコードを追加したくないので、フロントコントローラープラグインが便利です。