title: TypeError: int() argument must be a string, a bytes-like object or a number, not 'datetime.datetime'
body: <p>I am attempting to add a 'created_at' field for all my models and am getting the following error... <br><br><code>TypeError: int() argument must be a string, a bytes-like object or a number, not 'datetime.datetime'</code></p>
  
  <p><strong><em>In order, this is my work flow...</em></strong><br><br>
  1) I put <code>created_at = models.DateTimeField(auto_now_add=True)</code> in my models.<br>
  2) I run <code>python manage.py makemigrations</code> and it displays the following prompt in my command line...<br><br></p>
  
  <pre><code>You are trying to add a non-nullable field 'created_at' to comment without a default; we can't do that (the database needs something to populate existing rows).
  Please select a fix:
  1) Provide a one-off default now (will be set on all existing rows)
  2) Quit, and let me add a default in models.py
  Select an option: 1
  Please enter the default value now, as valid Python
  The datetime and django.utils.timezone modules are available, so you can do e.g. timezone.now()
  </code></pre>
  
  <p>3) At this point I type in <code>timezone.now()</code> on all of the models and when finished it successfully creates the migrations file for me. </p>
  
  <p>4) I run <code>python manage.py migrate</code> and get the <code>TypeError</code> message displayed above. </p>
  
  <p><strong>Things I have tried...</strong></p>
  
  <p>1) Looking through Stack Overflow for similar issues (to no avail)...<br>
  2) Deleteing the migrations file and attempting to use <code>datetime.datetime.now()</code> <br>
  3) Deleteing the migrations file and attempting to use the simple integer <code>1</code>. </p>
  
  <p>All of these attempts have been fruitless. </p>
  
  <p><strong><em>Full command line traceback...</em></strong></p>
  
  <pre><code>(env)alopex@Alopex:~/repos/hacker_news$ python manage.py migrate
  Operations to perform:
    Apply all migrations: admin, auth, sessions, hackernews, contenttypes
  Running migrations:
    Rendering model states... DONE
    Applying hackernews.0003_auto_20151226_1701...Traceback (most recent call last):
    File "manage.py", line 10, in &lt;module&gt;
      execute_from_command_line(sys.argv)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/core/management/__init__.py", line 350, in execute_from_command_line
      utility.execute()
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/core/management/__init__.py", line 342, in execute
      self.fetch_command(subcommand).run_from_argv(self.argv)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/core/management/base.py", line 348, in run_from_argv
      self.execute(*args, **cmd_options)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/core/management/base.py", line 399, in execute
      output = self.handle(*args, **options)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/core/management/commands/migrate.py", line 200, in handle
      executor.migrate(targets, plan, fake=fake, fake_initial=fake_initial)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/migrations/executor.py", line 92, in migrate
      self._migrate_all_forwards(plan, full_plan, fake=fake, fake_initial=fake_initial)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/migrations/executor.py", line 121, in _migrate_all_forwards
      state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/migrations/executor.py", line 198, in apply_migration
      state = migration.apply(state, schema_editor)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/migrations/migration.py", line 123, in apply
      operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/migrations/operations/fields.py", line 62, in database_forwards
      field,
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/backends/base/schema.py", line 382, in add_field
      definition, params = self.column_sql(model, field, include_default=True)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/backends/base/schema.py", line 145, in column_sql
      default_value = self.effective_default(field)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/backends/base/schema.py", line 210, in effective_default
      default = field.get_db_prep_save(default, self.connection)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/models/fields/related.py", line 910, in get_db_prep_save
      return self.target_field.get_db_prep_save(value, connection=connection)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/models/fields/__init__.py", line 728, in get_db_prep_save
      prepared=False)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/models/fields/__init__.py", line 968, in get_db_prep_value
      value = self.get_prep_value(value)
    File "/home/alopex/repos/hacker_news/env/lib/python3.4/site-packages/django/db/models/fields/__init__.py", line 976, in get_prep_value
      return int(value)
  TypeError: int() argument must be a string, a bytes-like object or a number, not 'datetime.datetime'
  </code></pre>
  
  <p><strong><em>Full migration file...</em></strong></p>
  
  <pre><code># -*- coding: utf-8 -*-
  # Generated by Django 1.9 on 2015-12-26 17:01
  from __future__ import unicode_literals
  
  import datetime
  from django.conf import settings
  from django.db import migrations, models
  import django.db.models.deletion
  from django.utils.timezone import utc
  
  
  class Migration(migrations.Migration):
  
  dependencies = [
      migrations.swappable_dependency(settings.AUTH_USER_MODEL),
      ('hackernews', '0002_auto_20151224_1605'),
  ]
  
  operations = [
      migrations.AddField(
          model_name='comment',
          name='created_at',
          field=models.DateTimeField(auto_now_add=True, default=datetime.datetime(2015, 12, 26, 17, 1, 23, 211181, tzinfo=utc)),
          preserve_default=False,
      ),
      migrations.AddField(
          model_name='comment',
          name='user',
          field=models.ForeignKey(default=datetime.datetime(2015, 12, 26, 17, 1, 28, 128127, tzinfo=utc), on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
          preserve_default=False,
      ),
      migrations.AddField(
          model_name='commentvote',
          name='created_at',
          field=models.DateTimeField(auto_now_add=True, default=datetime.datetime(2015, 12, 26, 17, 1, 34, 85491, tzinfo=utc)),
          preserve_default=False,
      ),
      migrations.AddField(
          model_name='post',
          name='created_at',
          field=models.DateTimeField(auto_now_add=True, default=datetime.datetime(2015, 12, 26, 17, 1, 37, 779457, tzinfo=utc)),
          preserve_default=False,
      ),
      migrations.AddField(
          model_name='postvote',
          name='created_at',
          field=models.DateTimeField(auto_now_add=True, default=datetime.datetime(2015, 12, 26, 17, 1, 41, 794803, tzinfo=utc)),
          preserve_default=False,
      ),
  ]
  </code></pre>