1) В default ты запихиваешь РЕЗУЛЬТАТ функции, а не саму функцию. Т.о. дефолт значение у всех полей key_expires будет ровно то, когда ты сделал последний раз makemigrations. Кстати, makemigrations можно делать бесконечно, всегда будет что-то новенькое :)
2) Ты пытаешься Date
Time полю присвоить дату. Для этого есть DateField.
3) Есть две огромные разницы между:
import datetime
datetime.date.today()
и
from datetime import datetime
datetime.date.today()
В первом случае ты из модуля datetime достаёшь класс date у которого есть метод today
Во втором случае ты у класса datetime достаёшь (якобы) классовый метод date и у него (якобы) должен быть метод today, чего, конечно же, нет.
4) На дворе середина 2016 года, люди давно переопределяют модели юзеров, а не костылят O2O. Почитай, хотя бы,
здесь. То же касается и второго питона.
Решение твоей проблемы такое:
key_expires = models.DateField(auto_now_add=True)