3

本番環境と同じ環境で開発したいので、SQLをPostgresqlに移行中です。

Postgresをインストールし、データベースのymlファイルを問題なく動作するように設定できましたrake db:create:all

しかし、プッシュする前に、postgresqlデータベースのユーザー名とパスワードは自分のコンピューターでしか利用できないことに気づきました。つまり、自分のコンピューターでログインロールを作成しました。同じくアプリケーションで開発している私の友人がコードをプルするとき、彼は私のコンピューター上で私が作成したユーザー名とパスワードを持っていません。

彼も同じログインロールを作成することになっていますか?または、開発者全員がアプリケーションにアクセスできるように、ユーザー名/パスワードを空白のままにする方法はありますか?さらに重要なことに、このような状況のベストプラクティスは何ですか?

私はWindowsで開発していて、彼はMacを使用しています。

私のdatabase.yml:ユーザー名とパスワードが省略されています。

development:
  adapter: postgresql
  encoding: unicode
  database: volatility_development
  pool: 5
  timeout: 5000
  host: localhost

test:
  adapter: postgresql
  encoding: unicode
  database: volatility_test
  pool: 5
  timeout: 5000
  host: localhost

production:
  adapter: postgresql
  encoding: unicode
  database: volatility_production
  pool: 5
  timeout: 5000
4

1 に答える 1

2

1 つの可能性は、erb と環境変数の組み合わせを使用することです。たとえば、次のようになります。

development:
  username: <%= ENV['USERNAME'] %>
  password: <%= ENV['PASSWORD'] %>
  adapter: postgresql
  encoding: unicode
  database: volatility_development
  pool: 5
  timeout: 5000
  host: localhost

次に、次のいずれかを実行できます。

  1. 次のようにサーバーを起動します。USERNAME=bob PASSWORD=secret rails s
  2. 以下を.bashrcに追加します

    export USERNAME=bob
    export PASSWORD=secret
    
于 2013-03-21T02:57:27.117 に答える