title: Can we use apps.py for application-level configuration as a contrast to settings.py for project-level configurations?
body: <blockquote>
  <p>This question has been asked earlier: <a href="https://stackoverflow.com/questions/32795227/what-is-the-purpose-of-apps-py-in-django-1-9">What is the purpose of apps.py in Django 1.9?</a></p>
  <blockquote>
  <p>Application configuration objects store metadata for an application. Some attributes can be configured in AppConfig subclasses. Others are set by Django and read-only.</p>
  </blockquote>
  </blockquote>
  <p>However, what does it mean by metadata for application? Is it limited only to those <a href="https://docs.djangoproject.com/en/1.9/ref/applications/#application-configuration" rel="noreferrer"><code>AppConfig</code> metadata:<code>name</code>, <code>verbose_name</code>, <code>path</code>, <code>label</code>, <code>module</code>, <code>models_module</code></a>?</p>
  <p>Or does it make sense to extends beyonds the predefined metadata, especially for Application Specific metadata, for example in <strong><code>blog</code></strong> apps we have a date format configuration, usually defined as follows:</p>
  <pre><code># File: settings.py
  BLOG = {
      'DATE_FORMAT': 'ddMMYYY',
  }
  </code></pre>
  <p>At which it is being used as follow:</p>
  <pre><code># File: blog/&lt;...&gt;.py
  from django.conf import settings
  date_format = settings.BLOG['DATE_FORMAT']
  </code></pre>
  <hr />
  <p>On contrary, we could move this configuration into <code>blog/apps.py</code> as <code>BlogConfig</code>?</p>
  <pre><code>class BlogConfig(AppConfig):
      name = 'blog'
      verbose_name = 'Awesome Blog'
      date_format = 'ddMMYYYY'
  </code></pre>
  <p>So that throughout the code in the application, <code>date_format</code> is being used by:</p>
  <pre><code># File: blog/&lt;...&gt;.py
  from django.apps import apps
  date_format = apps.get_app_config('blog').date_format
  </code></pre>
  <p>It sounds to me that <code>settings.py</code> is <strong>project</strong> settings, but not an application settings. Thus it is more sounds to put all application settings inside <code>apps.py</code> then <code>settings.py</code>. So, is this a valid assumption/argument/convention for me to put application configuration inside <code>apps.py</code> instead of <code>settings.py</code>?</p>