Django 我想在视图中执行与admin.register decorator在admin中相同的操作

Django 我想在视图中执行与admin.register decorator在admin中相同的操作,django,django-views,Django,Django Views,我想能够注册从一个单一的前视图不同的模型,因为我可以从管理创建视图 例如,在models.py中: class Book(models.Model): """Model representing a book (but not a specific copy of a book).""" title = models.CharField(max_length=200) author = models.ForeignKey('Author', on_delete=models.S

我想能够注册从一个单一的前视图不同的模型,因为我可以从管理创建视图

例如,在models.py中:

class Book(models.Model):
   """Model representing a book (but not a specific copy of a book)."""
   title = models.CharField(max_length=200)
   author = models.ForeignKey('Author', on_delete=models.SET_NULL, 
    null=True)
在admin.py中,我有:

@admin.register(Author)
class AuthorAdmin(admin.ModelAdmin):

我希望能够以同样的方式在前端的CreateBook视图中添加作者,感谢您的帮助

为此,请在
forms.py

设置在
url.py中添加书籍的url

In views.py

add_book.html


class AddBook(forms.ModelForm):
    class Meta:
           model = Book
           fields = ['title','author']
path('add/book/',views.add_book,name='add_book')
def add_book(request):
if request.method == POST:
    form = AddBook(request.POST)
    if form.is_valid():
    book = form.save(commit=False)
    book.save()
    return redirect('redirect where you want to redirect')
else:
    form = AddBook()
return render (request,'add_book.html',{'form':form})
<form action= '{% url 'add_book' %} method='post'>
{% csrf_token %}
{{ form.as_p }}
<button type = 'submit'>Submit</button>
</form>