問題タブ [phalcon-routing]

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.

0 投票する
1 に答える
161 参照

php - Phalcon 3.0 から Phalcon 2.0 への互換性

Devtools 3.0 を使用してベアボーン Phalcon 3.0 プロジェクトを作成し、自分のマシンで正常に動作し、Web ホスト サービスにアップロードすると、エラー メッセージが再現されました。 Argument 1 passed to Phalcon\Di\Injectable::setDI() must implement interface Phalcon\DiInterface, instance of Wegawe\Modules\Frontend\Module given in /home/wewe/web/app/modules/frontend/Module.php on line 41

その後、Web ホスト サービスが Phalcon 3.0 ではなく Phalcon 2.0 を使用していることに気付きました。

これを解決するためのトリックはありますか?私の悪い英語でごめんなさい。:D

ここに私の app/bootstrap_web.php があります:

app/modules/frontend/Module.php:

0 投票する
1 に答える
85 参照

php - mvc の URL リダイレクト。localhost/windshield-replacement.html を localhost/greenvalleyaz にリダイレクトしたい

私のアプリケーションは現在、phalcon php フレームワークにあります。最後に .html を含む URL をリダイレクトしたい。リダイレクトするためにコントローラー名を と書きましたWindshieldReplacementHtmlController.phpが、間にドットがあるためリダイレクトできませんでした。どうすればこれを解決できますか?

リダイレクト先:

localhost/windshield-replacement-htmlターゲットへのリダイレクトを入力すると、使用localhost/windshield-replacement.htmlするとコントローラーが検出されません。それを行う正しい方法ですか?

0 投票する
1 に答える
104 参照

php - 正規表現またはプレースホルダーを使用した Phalcon 2.x および 3.x ルーティングの中断

OSXを実行し、同じApache/2.4、PHP/5.6.27、およびPhalcon/2.0.7パッケージをインストールしたラップトップでローカル開発システムの再構築を行う必要がありました。サーバーコードは、ルーティングを除いて正しく機能しているようです (.htaccess コードは正しく、_url に適切に追加されています)。

元のルーティング コード:

このルートは以前は、/user (ユーザー リストを表示) から /user/1234 (ユーザーを表示)、/user/do_action/1234 などのアクションまで、すべての URI で機能していました。そのルートが機能しただけなので、ルーティングについてこれ以上詳しく説明したことはありません。そのままのコードも本番環境で動作しています(本番環境で使用されているライブラリをミラーリングしており、ローカルで異なる動作を取得していますが、発散動作を引き起こしている他の違いもわかりません)。

ローカルに再インストールすると、これらのパスは機能しなくなり、すべてが /index/index であるかのようにデフォルト設定されます。以前と同じバージョンの Phalcon/Apache/PHP/etc を使用していることを考えると (そして本番環境で)、なぜそのルートが適切でなくなったのかわかりません。

回避策として、より明示的なパスを試しています。これらは機能します:

ただし、動的ルーティング方法は機能しません (正規表現、プレースホルダー、変数を使用するもの):

私はこれについて多くの調査を行ってきましたが、変数/正規表現が一般的な問題であるように見えることを除けば、何も意味がありません。コントローラー ファイルをスキャンしてすべての可能なルートを生成するスクリプトを作成してもかまいませんが、ID 番号をプルするために {id:\d+} が機能する必要がありますが、現時点ではそれは問題ではありません。

また、PCRE がインストールされ、動作していることも確認しました (Phpinfo は、php が --with-pcre-regex でコンパイルされ、有効になっていることを示しています。ライブラリ バージョンは 8.02 2010-03-19 です)。

前もって感謝します!新しい Phalcon/3.0.1 へのアップグレードも試みましたが、同じルーティングの問題が発生しました。2.0.7 で解決しようと思ったのは、2.0.7 が現在の運用環境だからです。他のアップグレードは別の日に取っておきます。

編集 1: httpd.conf と httpd-ssl.conf を含む

httpd-ssl.conf

.htaccess

0 投票する
1 に答える
426 参照

rest - Phalcon REST API 構造

Phalcon を使用して REST API を開発しています。アプリケーションには、ユーザー、会社、連絡先などの複数のモジュールがあります。これらの各モジュールには、データを格納するための独自のテーブルがあります。さらに、各モジュールには独自の定義ファイルがあり、API 応答でどのフィールドを表示するかを記述しています。私は Phalcon にかなり慣れていません。Phalcon の学習を始めたばかりです。このコードが将来の問題を引き起こさないように、アプリケーションをどのように構築する必要があるか、または何かが欠けているか、コードを抽象化できるかどうかについて、助けが必要です。それ以上は素晴らしいでしょう。

計画どおりのディレクトリ構造:

各モジュールのすべてのデータベース関連のクエリを独自のモデルに常駐させたいと考えています。レコードのリストの API URL は、 http: //api.example.com/MyAPI/V2/contacts/list または /MyAPI/V2/users/list になります。同様に、レコードを作成するための API URL は、http: //api.example.com/MyAPI/V2/contacts/add または /MyAPI/V2/users/listになります。

どのように進めたらよいか教えてください