gpt4 book ai didi

python - 使用内联在前端启用 Django 管理功能

转载 作者:太空狗 更新时间:2023-10-29 21:09:28 24 4
gpt4 key购买 nike

我已决定将一些功能从我的管理网站转移到前端。功能包括使用一些外键内联管理一个模型。

为此,我已经安装了 django-dynamic-formset JQuery 插件(链接 git )并为此苦苦挣扎了几天。这是 problems 之一.

Django admin 中已经实现了相同的功能。我可以根据需要添加、修改、删除内联和修改模型实例。我想知道为什么我应该使用这个 JQuery 插件,为什么互联网上没有那么多关于该主题的好教程?

我需要一个很好的最新示例,说明如何在没有第三方 JS 文件的情况下在前端使用 django 表单集或内联表单集。如果它有链接(不是复选框)来删除内联项目和添加按钮,我会很高兴,这将正确地添加新的内联。

更具体一些,因为这个问题被认为太宽泛了:

我有两个模型 School 和 SchoolPlace:

class School(models.Model):
name = models.CharField(_('School name'), max_length=100)

class SchoolPlace(models.Model):

school = models.ForeignKey(School, verbose_name=_('school place'), related_name='school_places', blank=True, null=True)

name = models.CharField(_('School place name'), max_length=200)

city = models.ForeignKey(City, blank=True, null=True, verbose_name=_('city'),
help_text='city')

还有相应的形式:

class SchoolForm(forms.ModelForm):

name = forms.CharField(
label=_('Name'),
widget=forms.TextInput(attrs={
'placeholder': _('school name')}),
max_length=100, required=True)

class SchoolPlaceForm(forms.ModelForm):

name = forms.CharField(label=_('Name'),
widget=forms.TextInput(
attrs={'placeholder': _('school place name')}),
max_length=200,
required=False)

city = forms.ModelChoiceField(label=_('City'),
widget=forms.Select(attrs={'class': 'ui search dropdown'}),
queryset=City.objects.all(), required=False)

class Meta:
model = SchoolPlace
fields = ['name','city']
exclude = ['school']

我想以与在 Django 管理中相同的方式编辑这两个模型,但仅限于我自己的前端。至于所有的 js 文件已经在 django.contrib.admin 中,我想在不使用辅助应用程序和插件的情况下做到这一点。

我需要与 Django 管理中相同的功能:添加、删除、修改 SchoolPlace 内联。这是屏幕截图:enter image description here

最佳答案

我建议您使用管理表单(在您的 View 中)或管理 View (在自定义 url 上)并仅更改管理模板,或者甚至只是加载管理 javascript,您可以在管理模板中找到它。

关于python - 使用内联在前端启用 Django 管理功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41921378/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com