django-forms 相关问题

与Django Web框架的表单相关的特定问题

Django ModelChoiceField - 使用 id 以外的其他内容?

假设我有一个地址表,并且它有一个邮政编码字段——ModelChoiceField 不允许我使用 PK 以外的其他内容来验证存在是否正确?该怎么走呢?正常我...

回答 3 投票 0

我如何知道下订单或提出请求的特定用户

我一直在想一件事,(我是 Django 的新手)如何了解正在发出请求或下订单的用户,而不必要求他们填写用户名表格。 .

回答 1 投票 0

Django 表单 ModelChoiceField 的查询集

我有一个表格,我在其中使用以下字段。 contact_country = forms.ModelChoiceField(queryset=Country.objects.all()) 乡村模式看起来像这样 国家/地区类(型号.型号): ...

回答 4 投票 0

Django中如何将信息保存在两个不同的表中?

我有一个 Django 应用程序,我可以在其中打开一个包含呈现的字段(客户端和服务)的表单(表单)并将其保存在单个表中。 我决定将客户数据分离到另一个表中,以便...

回答 1 投票 0

在视图中实例化表单以进行获取请求,为什么需要“请求”参数?

在视图函数中实例化表单时,例如 form = Submit_bid() django 崩溃并给出错误“submit_bid() 缺少 1 个必需的位置参数:'request'”。 我在休息...

回答 1 投票 0

修改django动作风格

这是默认的操作风格。 如何将其样式更改为按钮,如下所示: 我知道它默认渲染到 ,但我想渲染到每个 。 我尝试过自定义 ModelAd... 这是默认的操作风格。 如何将其样式更改为按钮,如下所示: 我知道它默认渲染到<select>,但我想渲染到每个<button>。 我尝试了自定义 ModelAdmin def get_action_choices 但没有成功 我现在该怎么办? 您不能使用 get_action_choices,因为它可以让您更改下拉列表中的选择。 要更改样式或图标,您需要覆盖change_list_results.html管理模板。 在您的应用程序中创建一个名为 templates 的文件夹,并在该文件夹中创建一个名为 admin/change_list_results.html 的文件。 然后你可以使用自定义的 html 图标和 css

回答 0 投票 0

覆盖内联管理的查询集

我在覆盖内联管理的查询集时遇到一些问题。 这是一个沼泽标准的父管理员和内联管理员: 类 MyInlineAdmin(admin.TabularInline): 模型 = MyInlineModel 定义

回答 1 投票 0

django 表单添加 aria-label

如何向 django 表单字段添加 aria 标签?有标准的方法吗? 我可以将其添加到字段定义中或作为 css_class="" 的清晰布局的一部分吗? 我尝试添加它...

回答 1 投票 0

django - 显示所选项目的单位

Items 模型具有与 Units 模型不同的单位。现在当我们选择库存形式的商品时,如何显示所选商品的单位呢? 模型.py 类单位(模型.模型): 名称 = 型号。

回答 1 投票 0

如何在 Django 的表单文件字段中指定“上传到”路径?

我没有在该表单中使用模型,我知道我可以在模型文件字段内设置 upload_to 参数,但在表单中似乎不可能。 当我设置 FileField 时,文件将上传到

回答 2 投票 0

让 Django 表单向输入添加类,以防出现错误

我正在使用 Django 4.2.9,需要一个表单向输入字段添加一个附加类,以防验证失败。 我已经可以为每种情况添加类,但我不知道如何为呃......

回答 1 投票 0

CSRF 验证失败。请求中止。我正在尝试将数据从 AJAX 发送到views.py,但它显示了此错误

注册.html {% csrf_token %} 姓名: 注册.html <form method="POST" id="someForm"> {% csrf_token %} <label for="name">Name:</label> <input type="text" id="name" name="name" required /> <label for="email">Email:</label> <input type="email" id="email" name="email" required /> <label for="password">Password:</label> <input type="password" id="password" name="password" required /> <input type="submit" value="Register" name="createuser" /> </form> </div> </div> <script src="https://code.jquery.com/jquery-3.6.4.min.js"></script> <script> let URLd = "{% url 'defaultpg' %}"; let nameInput = document.getElementById("name"); let emailInput = document.getElementById("email"); let passwordInput = document.getElementById("password"); const someForm = document.getElementById("someForm"); someForm.addEventListener("submit", (e) => { e.preventDefault(); // prevent default behavior of the form var csrfToken = $("input[name='csrfmiddlewaretoken']").val(); let nameValue = nameInput.value; let emailValue = emailInput.value; let passwordValue = passwordInput.value; let isNameValid = /^[a-zA-Z]+$/.test(nameValue); let isEmailValid = /^\S+@\S+\.\S+$/.test(emailValue); let isPasswordValid = /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).{8,}$/.test( passwordValue ); if (isNameValid && isEmailValid && isPasswordValid) { alert("Successful"); $.ajax({ type: "POST", url: /defaultpg/, headers: { "X-CSRFToken": csrfToken }, data: { name: nameValue, email: emailValue, password: passwordValue, csrfmiddlewaretoken: csrfToken, }, dataType: "json", success: function (data) { // Handle success response alert("Successful msg"); }, error: function () { // Handle error response alert("Failure"); }, }); } else { // Handle validation errors if (!isNameValid) { alert("Please enter a valid Name"); } else if (!isEmailValid) { alert("Please enter a valid Email Address"); } else { alert( "Password must contain letters, capital letter, small letter, special character, and numbers with a length above 8" ); } } // rest of your logic goes here.... }); </script> 这是一个html文件,它接收来自表单的输入,然后传递给js,以便AJAX可以将数据发送到views.py 当调用 url ie /defaultpg 时,我收到 403 错误 urls.py path('defaultpg', views.defaultpg, name='defaultpg'), Views.py @csrf_protect def defaultpg(request): print("-----------------------") if request.method == "POST": # Use request.POST.get() to retrieve form data name = request.POST.get("name") email = request.POST.get('email') password = request.POST.get('password') print(name, email, password) return render(request, 'Entry/login.html') # You may want to handle the case when the request method is not POST return render(request, 'Entry/login.html') 设置.py MIDDLEWARE = [ "django.middleware.security.SecurityMiddleware", "django.contrib.sessions.middleware.SessionMiddleware", "django.middleware.common.CommonMiddleware", 'django.middleware.csrf.CsrfViewMiddleware', # Include CSRF middleware only once "django.contrib.auth.middleware.AuthenticationMiddleware", "django.contrib.messages.middleware.MessageMiddleware", "django.middleware.clickjacking.XFrameOptionsMiddleware", ] 我尝试手动将 defaultpy 放入 url 中,它工作正常,但当我使用 ajax 执行此操作时,它现在不起作用 您必须在请求中将 withCredentials 参数设置为 true。检查这个问题通过跨域帖子发送凭据? 首先通过执行 console.log(csrfToken) 确保您获得了 csrf 令牌 您需要做的另一件事是尝试传递数据,如下所示 data:function (d) { d.name = nameValue; d.email= emailValue; d.password= passwordValue d.csrfmiddlewaretoken = csrfToken; return d; },

回答 2 投票 0

django - 如何检查表单的干净方法是插入还是更新

我有一个表单,可以在 clean 方法中验证 ProjectMembership 对象是否已存在,该对象具有相同的项目和成员值。这是因为我有项目会员资格

回答 3 投票 0

django 将小部件应用于所有字段

有没有办法将 css 类应用于所有字段,而不是对每个字段执行以下操作。 表格.py 类 UserColorsForm(forms.ModelForm): 类元: 模型=用户颜色 ...

回答 4 投票 0

如何将excel文件导入到django中的表中

我有这个模型来存储有关计算机的信息。 我正在尝试添加一个功能来直接导入包含数据的 Excel 文件,而不是在表中输入数据,以防数据量很大...

回答 1 投票 0

如何通过单个 HTML 表单存储共享一对多关系的两个不同 django 模型的数据?

我有一个 HTML 表单来填写患者及其医生的详细信息。我使用外键创建了医生和患者模型之间的一对多关系。 表格(docpatien...

回答 1 投票 0

Django:验证 ModelForm 的字段依赖于该模型的另一个字段

我有这两个 Django 模型: 类列表(models.Model): ... 价格 = models.DecimalField( 小数位数=2, 最大位数=20, 默认=0, 验证器=[

回答 1 投票 0

将 Django 模型的外键字段与同一模型的另一个字段进行比较

我有这两个 Django 模型: 类列表(models.Model): ... 价格 = models.DecimalField( 小数位数=2, 最大位数=20, 默认=0, 验证器=[

回答 1 投票 0

在同一个 djangoform 上添加多个对象

有这段代码用于在数据库中注册设备。 您在表单中填写了一些数据,例如 MAC,然后保存。 我想实现一个功能,您可以用 ,(逗号)分割多个 MAC,而 e...

回答 1 投票 0

如何从django中的用户模型获取id

我有以下代码: user=User.objects.get(用户名=uid) 我通过 url“/profile/showprofile/{{post.author}}”传递 uid 值。我的 post.author 包含值为“dean88”。 当运行 fo...

回答 3 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.