django - 使用 Django 创建数组列表
问题描述
大约一年前,我开始用 PyQt5 编写我的第一个应用程序,其中有很多领域: 我知道它不好看,但重点是学习 PyQt5。现在我想让它在移动设备上可用。既然学过IT的人很多都懂Java,我想我有更好的机会得到第一份工作,知道Django + Javascript/jQuery。这是一个问题:每个“F1、F2、F3”都是一个单独的小部件。手机屏幕很小,所以我想一一显示。最简单的方法可能是这种方式(.html),但也许有更好的方法:
{% for field in GoldArrays %}
<p>{{field.text}} <input type="number" name="textfield"> {{field.number}}</p>
{% endfor %}
它适用于 F3/F4 小部件。'text' 将返回 200zl、100zl 等,数字只是一个 DecimalField。
问题是我对 Web 开发和 Django 非常陌生。据我了解,我应该为每个小部件创建一个单独的模板。我想在按下“下一步”按钮后从小部件中收集数据,然后将其存储到 SQLite 数据库中,以便保存进度。我应该将 sql 查询放在views.py 中吗?forms.py 和 models.py 中应该包含什么?高度赞赏两个用户输入的示例。
这是下一个问题...有一个不错的机会,我想为许多字段设置一些规则,例如突出显示值以便用户不需要删除该值,或者自动设置 0 以防万一是 None 作为输入。我知道我以后可以用 JS 做到这一点,但我可以用 Django 做到吗?我希望编写一个易于维护的代码。
请帮忙 :)
解决方案
使用视图(Django 中的控制器),您可以添加上下文数据。
它具有下一个结构:
{% for item in form_set %}
{{ item }}
{% endfor %}
Jinja2 是模板语言,所以后端的所有变量都必须写在括号中
{{ each_var_from_django }}
视图将是下一个:
class CreateOrderView(LoginRequiredMixin, CreateView):
template_name = 'dashboard/index.html'
success_url = reverse_lazy('namespace:url')
def get_context_data(self, *args, **kwargs):
ctx = super().get_context_data(**kwargs)
ctx['form_set'] = Model.objects.filter()
return ctx
推荐阅读
- r - 在R中的数据框中求和重复的列
- android - Jetpack compose 中的 [NestedScrollView + RecyclerView] 或 [Nested RecyclerView (Recycler inside another recycler) 相当于什么
- reactjs - 如何通过 id 或 value 从另一个组件中的一个组件获取元素?
- python-3.x - Python (stdout) readline 错误:从控制台应用程序读取时丢失/重复字符
- gradle - 只有带有自定义任务的 jar 中包含的 Java 文件
- python - 如何了解段落颜色docx python?
- javascript - 我需要帮助从
带有javascript的元素
- java - Java Swing GUI JLabel不显示
- ios - Nativescript 应用程序可以在模拟器上运行,但不能在真实设备上运行。崩溃报告说 EXC_BAD_ACCESS (SIGSEGV)
- php - 循环多维数组以输出 uniq 数字列表