sql >> データベース >  >> NoSQL >> Redis

Redisがenvを探していますredisurl変数env変数をどこに置くべきかわからない不正なURI(URIではありませんか?):( URI ::InvalidURIError)

    レーキをしているときにこれを取得していると思います。問題は、レーキ処理時に環境変数が設定されていないため、このエラーが発生することです(https://devcenter.heroku.com/articles/rails-asset-pipelineの情報)。克服するには、代わりに条件付きイニシャライザーを使用します。例:

    if ENV["REDISCLOUD_URL"]
        uri = URI.parse(ENV["REDISCLOUD_URL"])
        $redis = Redis.new(:host => uri.host, :port => uri.port, :password => uri.password)
    end
    

    P.S.または、これを使用しますが、Herokuによると次の点に注意してください:

    このラボ機能を使用すると、Herokuのベストプラクティスに反すると見なされます。このラボ機能を使用すると、ビルドの決定性が低下し、構成を変更した後に再デプロイが必要になる可能性があります。理想的には、アプリは設定なしでビルドできる必要があります。




    1. MongoDBの属性との多対多の関係を表すための最良のモデル

    2. Laravelのredisパイプライン機能の外部で変数にアクセスする

    3. mongorestoreを使用してMongoDBデータベースを復元する

    4. MongoDBストアドプロシージャと同等