2016-08-03 10 views
0

この問題はかなり簡単で簡単です。私はデータベースconnection stringを持っており、対応するdatabase.ymlファイルを作成したいと思います。次のようにRuby on Railsで接続文字列をdatabase.ymlファイルに変換する

接続文字列は次のとおりです。

data source=qsss.gar.de\SQL2012,3000;initial catalog=City;persist security info=True;user id=user_me;password=user_me##2009; 

を今、私が作成したファイルは、同様に、次のとおりです。

development: 
    adapter: sqlserver 
    host:  qsss.gar.de\SQL2012,3000 
    port:  1433 
    database: City 
    username: user_me 
    password: user_me##2009 

が今、問題は3行目で発生し

:この qsss.gar.de\SQL2012は、構文強調表示され、 ,3000の部分は白く、強調表示されずに通常のテキストとしてそのまま残ります

最後の行の問題:user_me##2009の場合、user_meを認識してから##2009をコメントとして扱いますが、この部分もパスワードの一部です。

引用符を使用した場合、強調表示はOKですが、使用する必要はありませんか?

私の質問は - どのようにdatabase.ymlファイルは、特定の接続文字列のように見えるでしょうか?

答えて

0

"を使用して文字列を折り返します。

development: 
    adapter: "sqlserver" 
    host:  "qsss.gar.de\SQL2012,3000" 
    port:  "1433" 
    database: "City" 
    username: "user_me" 
    password: "user_me##2009" 

このように、YMLはこれらを文字列としてのみ解釈し、コメントやその他のものとして解釈しません。

+0

私はあなたが言ったようにしようとしましたが、 "行3列8(RuntimeError)で引用されたスカラーを解析している間に未知のエスケープ文字を見つけました"というエラーが表示される – zwiebl

+0

'host:" gsss.garを使う必要があると思います。 de \\ SQL2012,3000 "'(バックスラッシュは 'S'をエスケープしようとします) – siegy22

関連する問題