問題タブ [url-for]
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.
python - フラスコurl_forTypeError
Flaskでurl_forメソッドを使用しようとするとエラーが発生します。私はFlaskクイックスタートに従うだけなので、その原因はわかりません。私はPythonの経験が少しあるJavaの人で、Flaskを学びたいと思っています。
トレースは次のとおりです。
私のコードは次のようなものです:
Flaskの安定版と開発版の両方を試しましたが、それでもエラーが発生します。どんな助けでも大歓迎です!私の英語があまり上手ではない場合は、ありがとうございます。
ruby-on-rails - 別のコントローラからパーシャルを再レンダリングすると、Rails の url_for ヘルパーが失敗するのはなぜですか?
主に CustomerController によってレンダリングされるコンテンツを含む一連のウィジェットを含むページがあります。ただし、顧客のアイテムへの変更に関するビジネス ロジックを処理するために使用される、DigitalItemController と呼ばれる別のコントローラーがあります。POST 経由で DigitalItemController のメソッドによって処理されるファイルをアップロードするために使用されるフォームがあります。フォームは、アップロードした顧客ファイルが含まれているため、:customer_assets という名前のパーシャルにあります。この同じウィジェットには、既にアップロードされたファイルとそれらへのリンクのテーブルがあります。
私が抱えている問題は、CustomerController が通常レンダリングを行うため、問題なくパーシャルをレンダリングすることです。ただし、アップロードするファイルをユーザーに送信させると、DigitalItemController のメソッドが呼び出され、その最後の行でパーシャルをレンダリングするように指示されます。その行に到達すると、パーシャルをレンダリングしようとするため、ActionController::RoutingError が発生します。気に入らない行は次のとおりです。
ここでは DataController が明示的に使用されているため、問題があるとは思いませんでした。以前のようにパーシャルを再レンダリングしたいことを知っているはずです。ただし、代わりにこれを取得します。
念のため、ここの ID 番号は明らかに検閲されています。私がする必要があるのは、DigitalItemController のそのメソッドでファイルのアップロードを処理し、パーシャルを再レンダリングして、ウィジェットが正しい最新のデータを表示するようにすることだけです。通常のレンダリングでは問題なくレンダリングされるのに、ファイルが送信されるとすぐにルーティング エラーがスローされるのは奇妙に思えます。
これを修正する方法は何ですか?
python - Python/Flask/Jinja url_for フォーマット
Flask の url_for を使用してタグの URL を生成しようとしていますが、「+」をエンティティ/URL コード「%2B」に置き換えているようです。これはかなり醜い URL になります。'+' の方がより好まれます。
それで、私の質問は、どのように url_for を使用できますか?しかし、HTML エンティティにフォーマットせずに「+」を受け入れるようにするにはどうすればよいですか?
ruby-on-rails - パラメータ付きの文字列からのRails url_for
作成しようとしているサイト ローカルの tinyurl があるので、コントローラー アクションに対応しない URL のフル パスを表示する必要がありますが、これは機能しません。
url_for
文字列を取る はパラメータを取らないためです。
どうすればこれを達成できますか?
コメントに従って編集します。
config/routes.rb:
レーキ:
ruby-on-rails - url_for [:new, Project] が new_projects_url (単数形) ではなく、new_projects_url (複数形) に変換されるのはなぜですか?
url_for [:new, Project, :test]
私は特に興味深いと思います: ここproject
は単数形です!
new_project_url
のような配列から (またはパス)を生成する方法を知っている人はい[:new, Project]
ますか?
python - Flask: サブディレクトリ内の静的ファイル
フラスコのテンプレート ファイルに、次のような css ファイルを含めます (ボイラープレートは省略しました)。
url_for('static', filename='css/bootstrap.css')
これは、(先頭のスラッシュのために)どの手段にレンダリングさ/static/css/bootstrap.css
れ、 として解釈されdomain.com/static/css/boostrap.css
ます。残念ながら、実際のstatic
フォルダーはサブディレクトリにあります。domain.com/projects/test/static/
環境仕様:
フォルダーにある私のfcgiファイル~/fcgi-bin
(ホスト固有だと思います):
私の .htaccess は domain.com/projects/test/ にあります
要約すると、代わりにurl_for('static', filename='css/bootstrap.css')
戻りたいstatic/css/bootstrap.css
/static/css/bootstrap.css
編集#1
これは、url_for('about') のような静的ファイルではなく、通常の url_for 呼び出しでも発生することに気付きました。
編集#2
これについては、 quickstart-appとブログ記事を書きました。
python - Flask url_for が間違った URL を生成する
フラスコの url_for ジェネレーターがビューの 1 つで機能しません (他のビューで機能します)。/user/?name=Joe
私が期待している間、ジェネレーターは与えてい/u/Joe
ます。
テンプレートでは、次を使用してユーザー ページの URL を取得しようとしています。{{ url_for('user', name = g.user.name ) }}
これは対応するビュー関数です:
最初はこれでうまくいきましたが、何かが変わりました。ビュー名と URL を変更しようとしましたが、うまくいきませんでした。
何かご意見は?私はこれで途方に暮れています...
完全なアプリは GitHub で入手できます: https://github.com/joehand/weight-and-more-tracker
編集:@login_required
装飾されたものはFlask-loginによって提供されるものです。
さらに、<name>
変数を削除しても問題は解決しません。その場合、URL は/user
.
ruby-on-rails - アセット パイプラインで url_options を使用して、url_for や link_to などのパラメーターを自動的に追加するにはどうすればよいでしょうか?
1つのレール3.2アプリで、これを行っています。
これは正常に動作します。アセット パイプラインを除きます。css、js、画像など、すべてのアプリの URL にこれらのパラメーターを追加する必要があります。
別のRails 3.2アプリで。奇妙な理由で私は無視します。同じ url_options は機能しませんでした。アセットだけでなく、まったく機能しませんでした。代わりに次のことをしなければなりませんでした。
これは資産に対しても機能しません。私は困惑しています。誰かが解決策を知っているでしょうか?
ありがとう