問題タブ [rails-bullet]
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-3 - gem"bullet"を使用して"declarative_authorization"gemのN+1クエリを修正
現在、私は1つの大きなWebアプリケーションに取り組んでおり、それをより高速に動作させるために、すべてのN + 1クエリをリファクタリングすることにしました(データベースへのリクエスト数を減らすために、http://rails-bestpractices.com/posts/29-fix-n -1-クエリ)。そこで、Rails 3.1.1では動作しないgem「bullet」をインストールしました(https://github.com/flyerhzm/bulletからフォークを使用できます)。各ページでdeclarative_authorizationgemを使用すると、同じアラートが表示されます。
それを手伝って、このクエリを高速化していただけませんか?
mysql - Rails 3に積極的にロードしますか?
Railsアプリケーションのパフォーマンスを向上させる方法を学ぼうとしています。私が見ている最初のステップは、積極的な読み込みです。
積極的な読み込みを利用できる場所を示す弾丸の宝石を設定しましたが、ヘルプの利用方法がよくわかりません。
ログの例は次のとおりです。
飛び出す線は次のとおりです。
と
私が確信していないのは、「ファインダー」の定義は何ですか。ビュー内のブロックですか、それともコントローラー内のブロックですか。
私に飛び出したログの最初のセクションを取得すると、コントローラーは次のようになります。
モデル:
私はレガシーデータベースを使用しているため、奇妙な列名などに注意してください。
ビューには次のものが含まれます。
それで、ビュー「ファインダー」に他の推奨列を追加する必要がありますか?またはどこか他の場所?
どんな助けでもいただければ幸いです!
ruby-on-rails - .includesメソッドが機能しない
小さなアプリ(Rails 4 Edgeで実行されている)のパフォーマンスを向上させるために、gembulletをインストールしました
ただし、「。includes」メソッドは機能していないようです。
これは「シンボルを整数に変換できません」を返します
これをRailsコンソールで実行している場合も同じです。どの関連付けでも、これと同じエラーが発生します。.includesは非推奨になっていますか、それとも間違っていますか?ありがとう
フルトレースは次のとおりです。
最後になりましたが、エラーは次のとおりです。
記事モデル:
ruby-on-rails - User.id == 1 の場合のみ宝石弾のアラートを表示することは可能ですか?
「弾丸」と呼ばれる宝石を使用しています https://github.com/flyerhzm/bullet これは、N + 1 問題を回避するのに役立ちます。
これを自分のアカウント(User.id==1)で本番モードで使用したいのですが可能ですか?
これを /config/environments/production.rb にコーディングしましたが、ユーザーが誰にアクセスしてもアラートがポップアップします。
ruby-on-rails - いくつかのパス/コントローラの gem bullet の有効化/無効化
一部のパス/コントローラーに対してのみ、javascript アラート (ログの場合もあります) を有効/無効にすることはできますか?
モデルをスキップする方法しか見つかりませんでしたが、パスやコントローラーについては何も見つかりませんでした。activeadmin で多くのアラートを受け取りましたが、そのコードを変更できません。
たとえば、列 :user_type の行に 1 つ取得します: (ファイル app/admin/admin_users.rb)
ruby-on-rails - Ruby on Rails - Bullet/N+1
Rails 4 について。 最近、開発環境に bullet gem をインストールして、アプリの N+1 クエリをクリアしました。関連モデル:
投稿: カテゴリとユーザーに属します。多くの SubmissionDetail があります。
ユーザー:多くの提出物があります
カテゴリ:多数の投稿があります。アワード所属。
アワード:多くのカテゴリがあります (およびカテゴリを介した提出)
SubmissionDetails: Submissionsに属します
投稿のインデックス ページにはeach do
、現在のユーザーが行った各投稿を表示するステートメントがあります。
その後、関連するカテゴリ、賞、提出物の詳細情報など、提出物に関する情報を一覧表示します。Bullet は、このステートメントに N+1 の問題があると言っています。
これら 3 つのモデルすべてを追加しようとするたびに.includes
、最初にリストしたモデルのみが選択されます (これは驚くべきことではありません)。複数のモデルが関係している場合は、別のルートに進む必要があると思います-おそらく結合ステートメントですか?
(最初の項目を :category にすると、この通知が追加されます):
(そのため、ステートメントの一部として、Award をそこに適合させる方法も含める必要があります。これには、カテゴリを通じて多くの提出物があります)。
では、3 つの異なるモデルに対して1 つを実行できないと仮定すると.includes
、別の方法はありますか? ありがとう。
ruby-on-rails - Rails 4.1.2 は bullet gem をインストールできません
Gemfile bullet gem に追加しました:
私のdevelopment.rbに次を追加しました:
Rails サーバーを実行しようとすると、次のエラー メッセージが表示されます。
助けてくれてありがとう。
ruby-on-rails - Bullet および RSpec gem を使用して n+1 クエリを削減する
Bullet Gem を RSpec で効果的に使用するにはどうすればよいですか? 現在、現在の単体テスト フレームワークで使用すると、本番アプリケーションで発生することとは関係のないテスト自体内の n+1 クエリが原因で、多くの通知またはテストの失敗が発生するように感じます。値または関連付け。そのため、n+1 個の障害を修正するためにコントローラーやモデルに何も設定する必要はありません。むしろ、テスト セットアップで特定のエラーをスローしないように何かを設定する必要があり、アプリケーションの実際のパフォーマンスの向上は見られません。