django - 更改显示记录在数据库中的显示方式
问题描述
我正在尝试在跟踪订单上创建网络应用程序。我对如何向我的用户分配订单的方式有疑问。如果我将很多用户添加到数据库中,则下拉菜单看起来不是很好,并且需要很长时间才能找到正确的用户。有什么方法可以将下拉菜单更改为搜索栏,该搜索栏将根据字符串输入找到用户?
这是我创建 MyUser 和 Order 的 models.py。
class MyUser(models.Model):
id = models.CharField(max_length=7)
first_name= models.CharField(max_length=50)
second_name = models.CharField(max_length=50)
class Objednavka(models.Model):
user = models.ForeignKey(MyUser, on_delete=models.CASCADE)
order = models.CharField(max_length=11)
视图.py
class CreateOrder(generic.edit.CreateView):
form_class = OrderForm
template_name = "url.html"
def get(self, request):
form = self.form_class(None)
return render(request, self.template_name, {"form": form})
def post(self, request):
form = self.form_class(request.POST)
if form.is_valid():
form.save(commit=True)
messages.success(request, f'Order has been created successfully')
return render(request, self.template_name, {"form": form})
解决方案
据我所知,Django 不提供这种选择器,但实现添加外部应用程序并不难。
看看这个(我个人使用的那个):https ://django-autocomplete-light.readthedocs.io/en/master/
推荐阅读
- bash - “dir/*:没有这样的文件或目录”与 find -exec ...“{}/*”
- h2o - 用 H2O 流量预测概率
- javascript - oracle apex 通过 javascript 获取选择列表的选定值
- java - Mockito:如何在测试时模拟自动装配的变量
- sql - SQL Server 按条件搜索
- c# - 无法通过 Unity 将数据写入 Firebase 数据库
- laravel - 如何检查变量是否为空
- python - 等待外部进程初始化的策略
- python - Unreadable characters from Python to csv file
- ibm-midrange - AS400 WRKQRY 连接十进制