1

だから、私が働いている小さな設計/開発機関で内部使用するための小さな Rails アプリを構築しようとしています。私はレールにかなり慣れていませんが(私はフロントエンド開発者です)、学んでいます。

目標は、アプリがHarvestからデータを取得し、10 人の従業員それぞれの毎日 / 毎週 / 毎月の勤務時間と、従業員が現在活動しているかどうか、作業の何パーセントが請求可能かなどのその他の情報を表示することです。情報は約 1 分ごとに更新されます。

私が扱うデータのほとんどは外部ソースから取得されるため、このプロジェクトを構築するためのベスト プラクティスについてアドバイスが必要です。最初は、各ユーザーの名前、電子メール、収穫 ID を pg データベースに保存してから、harvest_id を参照として使用して、必要なデータを Harvest に問い合わせてみました。作業レポートを取得する方法の例を次に示します。

    def harvest_user
      harvest.users.find(self.harvest_id)
    end


    def entries(interval, billable)
      user = self.harvest_user
      entries = harvest.reports.time_by_user(user, interval, DateTime.now, billable)
      sum = 0
      entries.each do |entry|
        hrs = entry.hours.to_s.to_f
        sum += hrs
      end
      sum.round(1)
    end

次に、データの部分レンダリングに ajax 呼び出しを行うことで、毎分データを更新しています。

すべてが正常に機能しますが、最初のページの読み込みが非常に遅いため、何か間違ったことをしているに違いないと思います。

何かアドバイス?1 つの大きな API 呼び出しを行い、必要に応じてそのデータをフィルタリングすることについて、いくつかのアイデアをつかむことができるように感じますが、どこから始めればよいかわかりません。

ありがとう!

4

0 に答える 0