0

私はRubyonRailsにまったく慣れておらず、これまで取り組んだことはありませんが、他の誰かの古いプロジェクトを引き継ぐことになっています。彼は、オンラインでWebサイト/サーバーにログインし、そこからデータを毎日抽出して計算を実行するWebアプリを設計しました。ただし、アプリケーションはかなり長い間実行されていなかったため、統計を表示しようとすると、ページがクラッシュします。5週間のデータを使用し、現在2日間のデータしかありません。

データを再起動して実行するには、不足している週のデータを手動で挿入する必要がありますが、問題は、データベースを検索/アクセスする方法や、RubyonRailsを正確に使用する方法がわからないことです。彼のプロジェクトのdbディレクトリにいくつかのファイルが見つかりましたが、それらはほとんどが.sqlite33ファイルまたは単に「ファイル」でした。Windows用のsqliteプリコンパイル済みバイナリをダウンロードして使用しようとしましたが、どうしたらよいかわかりません。また、ダウンロードしてSQTViewを使用してファイルを開いてテーブルを変更しようとしましたが、うまくいきませんでした。

どのファイルがメインデータベースであるかを確認するにはどうすればよいですか?また、それを編集するにはどうすればよいですか?そして、.sqlite33ファイルとは何ですか?ありがとう。

編集 アプリケーションはHomeController#indexにTypeErrorを生成します"nilはFloatに強制変換できません"

エラーをコード内の行にリンクしますが、エラーが発生する唯一の理由は、このコード行の変数が使用しようとしている期間のデータがテーブルにないためです。そのため、手動で値を更新したいと思います。

Sqlitemanがそのトリックをしてくれるかもしれないと思います。そして、このすべてを私に説明してくれてありがとう。編集後に動作することを確認する必要があります。

EDIT2 さて、彼のアプリを試している間、私は小さな啓示を受けました。丸1週間、値が空だったためにページがクラッシュしたことが判明しました。アプリを使用して、今週まで週に少なくとも1日のデータを収集した場合、アプリは機能しました。

カレンダーの読み込みに20〜30秒かかるため、カレンダーの日を手動でクリックしなくても、不足しているすべての日を入力する方法はありますか?

ご助力ありがとうございます。

4

1 に答える 1

1

Railsアプリケーションのデータベースはで定義されconfig/database.ymlていますが、データベース自体とスキームはdbフォルダー内にあります。開発テスト本番の3database.ymlつのデータベース構成がありますので、必ず適切なファイルを選択してください。

ファイルについて聞いたことがありませんが、.sqlite33SQLiteファイルを手動で編集するにはSQLiteManをお勧めします。ただし、手動で編集することはお勧めしません。

2つのmodは異なるデータベースを使用するため、アプリを開発モードで実行しているか本番モードで実行しているかを確認することをお勧めします。他のモードで実行してみてください。

それでも問題が解決しない場合は、データベースファイルのコピーを保存して、次のコマンドを実行してみてください。

bundle install
bundle exec rake assets:precompile
rake db:migrate
rake db:migrate RAILS_ENV="production"

(Linuxを使用している場合は、最初のコマンドもで実行することをお勧めしますsudo

これらのコマンドは、必要なすべてのgemがインストールされていること、プリコンパイルされたアセットが最新であること、およびデータベースがスキーマに適合していることを確認します。他の人が使用していたものと同じマシンで同じデータベースを使用してそのアプリケーションを実行している場合、それらのコマンドは必要ありませんが、アプリケーションを自分のマシンに移動した場合、または使用済みのそれらのコマンドがクラッシュを修正する可能性があるよりも古いdbファイル。

いずれにせよ、アプリケーションが生成しているエラーを教えていただければ、さらにサポートを提供できる可能性があります。

于 2012-08-02T15:13:37.090 に答える