相关疑难解决方法(0)

如何将CreateView与ModelForm一起使用

当我提交表单时,我在我的类AuthorCreateForm中收到错误.未定义NameError self

我如何使用CreateForm?

我在Author.py文件中创建了一个类

from django.views.generic import TemplateView, ListView, CreateView
from books.models import Author, Publisher, Book
from books.forms import AuthorForm

class AuthorCreateView(CreateView):
    objAuthorForm = AuthorForm(self.request.POST)

    if(objAuthorForm.save()):
        success = "Form saved!"
    else:
        error = "There was an error!"
Run Code Online (Sandbox Code Playgroud)

我有一个提交到/ Author/Create的html模板

我的urls.py中有以下行

('^authors/create/$', Author.AuthorCreateView.as_view()),
Run Code Online (Sandbox Code Playgroud)

我在这个URL上渲染表单

('^authors/new/$', TemplateView.as_view(template_name="author_new.html")),
Run Code Online (Sandbox Code Playgroud)

我发现基于类的视图令人困惑,有没有人有一个关于如何将它用于CRUD操作的好教程?

谢谢

django django-views

52
推荐指数
1
解决办法
6万
查看次数

在 ModelForm django 中使用 request.user 初始化表单

我有这个 ModelForm

class ScheduleForm(forms.ModelForm):

    class Meta:
        model = Schedule
        fields = ['name', 'involved_people',]

    def __init__(self, user, *args, **kwargs):
        super(ScheduleForm, self).__init__(*args, **kwargs)
        self.fields['involved_people'].queryset = Profile.objects.exclude(user=user)
Run Code Online (Sandbox Code Playgroud)

这是我的看法

def create_schedule(request):
    form = ScheduleForm(request.POST or None)
    schedules = Schedule.objects.all().order_by('deadline_date')

    if form.is_valid():
        schedule = form.save(commit=False)
        schedule.save()

        messages.success(request, "Schedule added successfully!")
        return render(request, 'schedule/index.html', {'schedules': schedules})

    context = {'form': form}

    return render(request, 'schedule/create_schedule.html', context)
Run Code Online (Sandbox Code Playgroud)

你如何通过 request.user 视图?你如何初始化其中的表单request.user

django modelform

1
推荐指数
1
解决办法
1559
查看次数

标签 统计

django ×2

django-views ×1

modelform ×1