問題タブ [actiondispatch]
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.
ruby-on-rails - Rails 4.0 でのカスタム エラー処理
Ruby 2.0 と Rails 4.0 を使用して Ruby on Rails API を構築しています。私のアプリはほぼ JSON API だけなので、エラー (500、404) が発生した場合は、そのエラーをキャプチャして適切にフォーマットされた JSON エラー メッセージを返したいと考えています。
私はこれを試しました:
私のApplicationControllerで。
これらはどちらもうまくいきません (例外はまったくキャプチャされません)。私のグーグルは、これが 3.1 と 3.2 の間で大きく変更されたことを示しており、Rails 4.0 でこれを行う方法に関する適切なドキュメントを見つけることができません。
誰か知ってる?
編集 404 ページに移動したときのスタック トレースは次のとおりです。
私はそれをこれまでに取得したくないと思います.何かがそれをキャッチし、適切なjsonエラー応答を返す必要があります.
ruby-on-rails - ボタンがコントローラーの間違ったアクションを指している
コントローラーの正しいアクションを指すボタンを取得する際に問題が発生しています。私のショービューには次のボタンがあります。
私のコントローラーには、次の2つのアクションがあります。
「承認のために送信」ボタンをクリックすると、送信アクションが期待どおりに実行されます。[ECN を閉じる] ボタンをクリックすると、期待どおりにアラートが表示されますが、閉じるアクションではなく送信アクションが処理されます。「Close ECN」ボタンをクリックすると、開発ログに次のように表示されます。
したがって、間違ったアクションを呼び出していることがわかります。何が原因なのかはわかりませんが、ルーティングについてはよくわかりませんが、ルートファイルも次のとおりです。
2 つのアクションを作成したときに、2 つの「一致」行を追加しました。何か案は?
ruby-on-rails - Rails 4のカスタムルーティング:このカスタムメソッドが呼び出されるようにルーティングを設定する方法
更新された投稿
カスタムメソッド「refresh_table」を含む「uploads_controller.rb」ファイルがあります
ルート.rb:
レーキルート:
次に、サーバーを再起動し、これをURLとして入力してルートが機能することをテストしようとしました
これにより、ブラウザでエラーが発生しました。
サーバーログには次のように記載されています。
また、アップロード用の routes.rb から「index」メソッドが削除されていることにも気付きました。
どうすればこれを修正できますか? ありがとう
actiondispatch - rails4 アップロードファイル拡張子エラー ActionDispatch::Http::UploadedFile
Rails 4でファイルをアップロードしたいのですが、アップロードする前にファイル拡張子を確認できません。
注: ファイルをうまくアップロードできます が、アップロードする前にファイルの種類を取得したい
アプリの別のステップで拡張機能が必要だからです。
コマンドを使用しようとしています
しかし、常にエラーが発生しました
can't convert ActionDispatch::Http::UploadedFile into String
また、アップロードする前にファイルのベース名を取得するにはどうすればよいですか?? 使おうとしたとき
同じエラーが発生しました
また、名前をStingに変換しようとしたとき、何も得られません
ruby-on-rails - Rails ヘッダーの HTTP_ プレフィックスを削除します
Railsコントローラーに送信されたリクエストには、 が追加されているため、HTTP_
プレフィックスが付けられActionDispatch::HTTP.Headers
ます。それを防ぐ方法はありますか(をオーバーライドせずにActionDispatch::HTTP
、カスタムヘッダーをそのまま使用し、それらをキーとして使用できるようにしますheaders.@env
か?