問題タブ [phalcon]
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.
php - Phalcon\Mvc\Model findBy*** 静的メソッド
今日、モデル オブジェクトに findBy{property} のようなメソッドがあることを発見しました。(ファルコン0.9.0を使用しています)
たとえば、ID、コード、名前のプロパティを持つモデル言語があります。Language::findByCode('en');
そして、それぞれについて、または のようなメソッドを呼び出すことができますLanguage::findByName('English');
これは信じられないほど素晴らしいです。これを自分のプロジェクトで使用できますか (十分に大きいので、後でコードを書き直したくありません)。つまり、これらの静的メソッドは将来登場するのでしょうか?
そして、それらの方法に関するドキュメントはありますか? これに関するそのようなドキュメントを見つけることができませんでした:((
php - Phalcon \ Mvc \ Model :: beforeCreate()メソッド
beforeCreate()メソッドで定義されたdate_createdフィールドを使用してモデルを保存しようとすると、保存されません。
コントローラのアクションコンテキスト:
php - Phalcon \ Mvc\Modelおよび複合主キー
プロジェクト内のすべてのエンティティにPhalcon\Mvc \ Modelを使用しています(物事を標準化するため)。今日、いくつかのエンティティとmaxmindの場所(およびブロック)の間のネイティブな関係を実装するために、mysqlデータベースにmaxmindgeoipデータベースをインポートする必要がありました。
Maxmindデータベースはデフォルトでcsvで提供されるため、mysqlでデータベースを整理する方法はすべての開発者が自分のニーズに応じて解決しなければならない質問です。Maxmindデータベースには2つのファイルが含まれています。
- GeoLiteCity-Blocks.csv(IP範囲を格納)
- GeoLiteCity-Location.csv(場所に関する情報を格納します)
ほとんどのチュートリアルでは、IP範囲を持つテーブルを格納するために次のテーブル定義を使用することをお勧めします。
ご覧のとおり、複合主キーがあります。Phalcon \ Mvc \ Modelでそのようなキーを使用しても大丈夫ですか?いくつかの制限があると思います(論理的には、それらは存在するはずです。たとえば、Phalcon \ Mvc \ Model :: findFirst($ key)メソッドの動作を予測することはできません)
実際、このテーブルが使用するディスクサイズは気にしません。私にとって重要なのは、パフォーマンスだけです。また、各エンティティ/テーブルの小さな側面を大量に覚えないように、すべてのモデルを標準化したままにしておきたいと思います。
だから、私の質問:複合キーでPhalcon \ Mvc \ Modelを使用しても大丈夫ですか、それともid
主キーとなる1つの追加の列を作成し、インデックスを追加startIpNum
しendIpNum
て選択を高速化する方が良いですか?
phalcon - 余分な属性は正常に設定された後に消えます
参照テーブルを介して親オブジェクトに関連付けられているすべてのレコードを取得し、モデルに直接挿入しようとしています。RoleEndpointsMany() を持つオブジェクト Role があります。RoleEndpoints は Role と hasMany() Endpoints に属します。すべてのデータは期待どおりに取得されていますが、設定すると消えてしまうようです。
コメントにあるように、結果セットの 2 回目の反復中に、何らかの理由で endpoints 属性のドロップが null になります。ここで何か間違ったことをしていますか?手順がありませんか?
どんな助けでも大歓迎です。ありがとうございました!
php - Phalcon:疑問符の付いたアクションパラメータを受け取るか、GETメソッドから変数を取得する方法
http GETメソッドを使用して、別のサーバー(トークン)から情報を受信する必要があります。私はそれを取得したときにURLを変更できるので、次のようなアクションでGETをパラメーターにしようと試みることができると考えました。
そして、「?」の後にそのevrythingが判明しました。無視されます。また、私はルートを定義しようとしました:
だからそれも無視されます...
おもう '?' Apache mod_rewriteと関係がありますが、特別なmod_rewriteルールを使用してGETを取得することは可能ですか?
php - Phalconおよびcliアプリケーション
CLIアプリケーションでphalconを使用して、argvパラメーターを使用してリクエストを処理することは可能ですか?実行する必要のあるコマンドを理解するためにargvパラメーターを使用したい。
./script.php robot/create --color=red --feature=weapon
これをコントローラーやアクションなどでアプリケーション内に取り込むには、次のようにします。
コントローラー:ロボットアクション:GETパラメーターの作成:color = red、feature = weapon
次のようなCLIクラスを使用することは可能ですか?
Phalcon \ ClI \ Dispatcher http://docs.phalconphp.com/en/latest/api/Phalcon_CLI_Dispatcher.html
Phalcon \ CLI \ Console http://docs.phalconphp.com/en/latest/api/Phalcon_CLI_Console.html
Phalcon \ CLI \ Task http://docs.phalconphp.com/en/latest/api/Phalcon_CLI_Task.html
と他の同様の?
ドキュメントやハウツーマニュアルはありません...おそらく誰かが経験や単なるアイデアを持っています。DIを定義してアプリケーションを初期化する必要があることは理解していますが、これをよりネイティブな方法で作成する方法については、まったく考えがありません。
また、もう1つの質問:phalconはargvパラメーターを自動的に処理できますか?
私が理解しているように、アプリケーションとしてPhalcon \ CLI \ Consoleオブジェクトを起動し、DIに渡す必要があります。しかし、全体のプロセス/シナリオ...私はそれを得ることができません:)
php - Phalcon がビューをレンダリングしない
マルチモジュール phalcon アプリケーションを作成しようとしましたが、ビューをレンダリングできません。たとえば、Application\IndexController::indexAction は view/index/index.phtml をレンダリングしません。すべてのコードはこちら: GitHub Phalcon バージョン: 0.9
php - Phalconの一部のコンポーネントへのグローバルアクセス
一部のクラスとオブジェクトをすべてのMVCレイヤーからアクセスできるようにするにはどうすればよいですか?
たとえば、現在のユーザーのプロファイルとconfig.ini
ファイルにグローバルにアクセスしたいとします。
Zend Framework 1.xでは、この目的でZend_Registeryを使用していました。
phalcon - ORM順序でINの順序を保持する
INステートメントでIDの順序を保持するクエリを実行しようとしています。Model ManageQueryBuilderまたは標準のORM'order'配列パラメーターのいずれでもそれを行うことができないようです。私は何かが足りないのですか?私は得続けます:
これが私のモデルマネージャーです:
PhQLがFIELDキーワードを好まないことは明らかです。PhQLでやろうとしていることを実行する方法はありますか?必要なことができないようです。
php - $dispatcher->forward() 実行後の URI の処理
フォーム送信 URI を次のように設定'/register'
し、コントローラー アクション$dispatcher->forward()
を に設定しました'/profile'
。フォームを送信すると、正しいページに転送されますが、ブラウザに表示される URI は'/register'
. $dispatcher->forward()
フォーム アクションではなく、メソッドで定義されたものに URI を設定する方法はありますか?