По моему views.py:
class DatasetRequestCreateView(CreateView):
model = DatasetRequest
form_class = DatasetRequestForm
template_name = 'engine/datasetrequest_create.html'
def get_success_url(self):
return reverse("datasetrequest_detail", kwargs={
'pk': str(self.kwargs['pk']),
'slug': str(self.kwargs['slug'])})
def form_valid(self, form):
f = form.save(commit=False)
f.creator = self.request.user
f.save()
# dsr = f.save()
# dsr.votes.up(self.request.user.pk)
return super(DatasetRequestCreateView, self).form_valid(form)
def form_invalid(self, form):
return self.render_to_response(
self.get_context_data(form=form))
forms.py
class DatasetRequestForm(forms.ModelForm):
class Meta:
model = DatasetRequest
exclude = ('creator', 'vote_score', 'num_vote_up',
'num_vote_down', 'slug', 'best_dataset_entry', 'is_paid')
Соответствующие urlpatterns в urls.py
urlpatterns = [
# datasetrequest views
path('dataset-request/<int:pk>/<slug:slug>/',
views.DatasetRequestDetailView.as_view(), name='datasetrequest_detail'),
path('dataset-request/create/',
login_required(views.DatasetRequestCreateView.as_view()), name='datasetrequest_create'),
path('dataset-request/update/<int:pk>/<slug:slug>/',
login_required(views.DatasetRequestUpdateView.as_view()), name='datasetrequest_update'),
path('dataset-request/delete/<int:pk>/<slug:slug>/',
login_required(views.DatasetRequestDeleteView.as_view()), name='datasetrequest_delete'),
path('dataset-request/pay/<int:dsr_pk>/',
login_required(views.pay_for_dataset_request), name='datasetrequest_pay'),
]
Страница в вопросе: http://datafix.io/dataset-request/create
Войдите под именем пользователя «test» и паролем «djangohelp» или создайте свою учетную запись.
Чтобы воссоздать ошибку, введите заголовок, описание и (int) вознаграждение и попробуйте отправить форму. Он просто обновит страницу, не создав форму.
DatasetRequestCreateView работал нормально, прежде чем я интегрировал django-wysiwyg с tinymce в форму. Не уверен, что не так. Документы находятся в их файле readme: https://github.com/pydanny-archive/django-wysiwyg
Заранее спасибо