0

Capistrano で mod_rails と nginx を使用して Ruby on Rails アプリケーションをデプロイしましたが、完全に機能していますが、不可解な問題があります。

サーバーで次のコマンドを実行すると:

SHOW TABLES IN application_production;

MySQL は次を返します。

Empty set (0.00 sec)

保存中のデータを入力したので、情報がデータベースに書き込まれていることがわかります。Railsアプリケーションとサーバー全体を再起動し、他のコンピューターからサイトにアクセスしようとしましたが、完全に機能していますが、クエリはまだ空のセットを返しています. 私は完全に困惑しています。

誰が何が起こっているのか知っていますか?ありがとう!

4

2 に答える 2

2

database.ymlファイルは本番環境用に正しくセットアップされましたか?

于 2009-07-24T08:04:18.230 に答える
0

もちろん、質問を投稿してから 10 分後には次のことがわかりました。

デプロイする前に、更新した database.yml ファイルを Mercurial にコミットしていなかったので、最新の変更セットを取得したときに、古い database.yml (デフォルトの本番データベース) が使用されました。このため、MySQL ではなく、プロジェクト フォルダーで SQLite データベースを使用していました。

愚かな間違い!教訓: デプロイする前に必ずコミットしてください。

于 2009-07-24T07:48:54.673 に答える