title: Heroku: Rails couldn't infer from your database.yml
body: <p>This is a vanilla JavaScript Front-End Rails backend website. It was working locally then I put it on heroku and now I am getting the error:
  &quot;Rails couldn't infer whether you are using multiple databases from your database.yml and can't generate the tasks for the non-primary databases. If you'd like to use this feature, please simplify your ERB.&quot;
  this is when I attempt rake db:create, rake db:migrate, etc etc etc. I cannot find any good resources on how to fix this. I read about putting a line in the puma file such that it could translate erb. I read I need to put &quot;LESS&quot; in my database.yml file. Nothing has worked and even similar posts here on stack overflow do not give much help.<br />
  <strong>database.yml</strong></p>
  <pre><code># PostgreSQL. Versions 9.3 and up are supported.
  #
  # Install the pg driver:
  #   gem install pg
  # On macOS with Homebrew:
  #   gem install pg -- --with-pg-config=/usr/local/bin/pg_config
  # On macOS with MacPorts:
  #   gem install pg -- --with-pg-config=/opt/local/lib/postgresql84/bin/pg_config
  # On Windows:
  #   gem install pg
  #       Choose the win32 build.
  #       Install PostgreSQL and put its /bin directory on your path.
  #
  # Configure Using Gemfile
  # gem 'pg'
  #
  default: &amp;default
   adapter: postgresql
   encoding: unicode
    For details on connection pooling, see Rails configuration guide
    https://guides.rubyonrails.org/configuring.html#database-pooling
   pool: &lt;%= ENV.fetch(&quot;RAILS_MAX_THREADS&quot;) { 5 } %&gt;
  
  development:
    &lt;&lt;: *default
    database: tempGradientRailsJsonAPIJS_development
    username: postgres
  
    password: *******
    
    host: localhost 
    
    # The specified database role being used to connect to postgres.
    # To create additional roles in postgres see `$ createuser --help`.
    # When left blank, postgres will use the default role. This is
    # the same name as the operating system user that initialized the database.
    #username: tempGradientRailsJsonAPIJS
  
    # The password associated with the postgres role (username).
    #password:
  
    # Connect on a TCP socket. Omitted by default since the client uses a
    # domain socket that doesn't need configuration. Windows does not have
    # domain sockets, so uncomment these lines.
    #host: localhost
  
    # The TCP port the server listens on. Defaults to 5432.
    # If your server runs on a different port number, change accordingly.
    #port: 5432
  
    # Schema search path. The server defaults to $user,public
    #schema_search_path: myapp,sharedapp,public
  
    # Minimum log levels, in increasing order:
    #   debug5, debug4, debug3, debug2, debug1,
    #   log, notice, warning, error, fatal, and panic
    # Defaults to warning.
    #min_messages: notice
  
  # Warning: The database defined as &quot;test&quot; will be erased and
  # re-generated from your development database when you run &quot;rake&quot;.
  # Do not set this db to the same as development or production.
  test:
    &lt;&lt;: *default
    database: tempGradientRailsJsonAPIJS_test
  
  # As with config/credentials.yml, you never want to store sensitive information,
  # like your database password, in your source code. If your source code is
  # ever seen by anyone, they now have access to your database.
  #
  # Instead, provide the password as a unix environment variable when you boot
  # the app. Read https://guides.rubyonrails.org/configuring.html#configuring-a-database
  # for a full rundown on how to provide these environment variables in a
  # production deployment.
  #
  # On Heroku and other platform providers, you may have a full connection URL
  # available as an environment variable. For example:
  #
  #   DATABASE_URL=&quot;postgres://myuser:mypass@localhost/somedatabase&quot;
  #
  # You can use this database configuration with:
  #
    #  production:
    #    url: &lt;%= ENV['DATABASE_URL'] %&gt;
  
   production:
     &lt;&lt;: *default 
    database: &lt;%= ENV['DATABASE_URL'] %&gt;
    username: tempGradientRailsJsonAPIJS
    password: &lt;%= ENV['TEMPGRADIENTRAILSJSONAPIJS_DATABASE_PASSWORD'] %&gt;
   
  </code></pre>
  <p><strong>error in terminal</strong></p>
  <pre><code>Rails couldn't infer whether you are using multiple databases from your database.yml and can't generate the tasks for the non-primary databases. If you'd like to use this feature, please simplify your ERB.
  rake aborted!
  YAML syntax error occurred while parsing /mnt/c/Users/swordfish/dev/flatiron/Portfolio/frontBack/tempGradientRailsJsonAPIJS/config/database.yml. Please note that YAML must be consistently indented using spaces. Tabs are not allowed. Error: (&lt;unknown&gt;): did not find expected key while parsing a block mapping at line 17 column 1
  /home/swordfish/.rvm/gems/ruby-2.6.1/gems/railties-6.0.2.2/lib/rails/application/configuration.rb:246:in `rescue in database_configuration'
  /home/swordfish/.rvm/gems/ruby-2.6.1/gems/railties-6.0.2.2/lib/rails/application/configuration.rb:221:in `database_configuration'
  /home/swordfish/.rvm/gems/ruby-2.6.1/gems/activerecord-6.0.2.2/lib/active_record/railtie.rb:39:in `block (3 levels) in &lt;class:Railtie&gt;'
  /home/swordfish/.rvm/gems/ruby-2.6.1/gems/rake-13.0.1/exe/rake:27:in `&lt;top (required)&gt;'
  /home/swordfish/.rvm/gems/ruby-2.6.1/bin/ruby_executable_hooks:24:in `eval'
  /home/swordfish/.rvm/gems/ruby-2.6.1/bin/ruby_executable_hooks:24:in `&lt;main&gt;'
  
  Caused by:
  Psych::SyntaxError: (&lt;unknown&gt;): did not find expected key while parsing a block mapping at line 17 column 1
  /home/swordfish/.rvm/gems/ruby-2.6.1/gems/railties-6.0.2.2/lib/rails/application/configuration.rb:228:in `database_configuration'
  /home/swordfish/.rvm/gems/ruby-2.6.1/gems/activerecord-6.0.2.2/lib/active_record/railtie.rb:39:in `block (3 levels) in &lt;class:Railtie&gt;'
  /home/swordfish/.rvm/gems/ruby-2.6.1/gems/rake-13.0.1/exe/rake:27:in `&lt;top (required)&gt;'
  /home/swordfish/.rvm/gems/ruby-2.6.1/bin/ruby_executable_hooks:24:in `eval'
  /home/swordfish/.rvm/gems/ruby-2.6.1/bin/ruby_executable_hooks:24:in `&lt;main&gt;'
  Tasks: TOP =&gt; db:migrate =&gt; db:load_config
  (See full trace by running task with --trace) 
  </code></pre>