Нет, default там не нужен. Скорее всего User у вас из django.contrib.auth.models.User. А это значит, что у вас стоит AuthenticationMiddleware. А это значит, что у вас есть пользователь request.user, попробуйте его напечатать из вашего view. Значит вы можете post.author = request.user
Ваша форма скорее всего не включает поле с пользователем, а значит сохранять надо как post = form.save(commit=False), чтобы форма записала данные в post, но не пыталась его сохранить. Потом вы присваиваете пользователя.
А вообще, стоило бы полностью пройти
туториал.