gpt4 book ai didi

mysql - 问题 Django V 1.11.16 管理搜索无法处理所有数据

转载 作者:行者123 更新时间:2023-11-29 16:29:23 27 4
gpt4 key购买 nike

我在 Django 中开发了一个申请表,我使用 Django 管理添加了 500 多条记录,然后使用 MySql 导入了 9000 条记录。在 Django 管理中我可以完美地看到所有记录。但是,当我搜索xxx记录时没有找到它,但我可以在管理员那里看到该记录。这很奇怪,因为当我搜索使用 Django 管理添加的记录时,搜索有效并正确显示它们。如果我想搜索一条或多条使用 MySql import 导入的记录(9000 条记录)找不到它们。如果我过滤它们,是的,我会看到记录,如果我输入相同的搜索过滤器不会显示它们。我真的很感谢你的帮助。谢谢一百万。

这是针对在 AWS 上运行的 Linux 服务器,运行 MySQL、Python、Django 1.11.16 我更改了过滤器,添加了过滤器,检查了 search_fields,重新启动了服务器。

from django.contrib import admin
from .models import ApplicationForm, Supervisor
from .forms import AdminForm
from advanced_filters.admin import AdminAdvancedFiltersMixin
from apps.users import views
# Register your models here.


class ReadOnly(AdminAdvancedFiltersMixin, admin.ModelAdmin):

readonly_fields = []
advanced_filter_fields = ('first_name', 'last_name', 'email', 'phoneNumber', 'city', 'state', 'socialSecurityNumber', 'other city', 'project', 'agreement_signed_date', 'middle_name', 'supervisor__name', 'gender', 'Marital_status', 'home_address1', 'home_address2', 'postCode', 'dateOFBirth', 'no_of_dependents', 'emergency_contact_firstName', 'emergency_contact_lastName', 'emergency_contact_phoneNumber', 'emergency_contact_relation', 'ceiling_mechanic', 'framing_mechanic', 'drywall_hanger', 'drywall_finisher', 'general_larborer', 'painter_tradesman', 'plaster_tradesman', 'layout_blueprint', 'drywall_wood_framing', 'drywall_painter', 'cabinets', 'safety_jobsite', 'masonry_bricklayer', 'masonry_blocklayer', 'carpenter', 'concrete_forming', 'concrete_finisher', 'osha_manager', 'project_manager', 'is_osha10', 'is_osha30', 'is_osha_training_manager', 'work_eligible_military')

def get_readonly_fields(self, request, obj=None):
group = request.user.groups.values_list('name', flat=True)
if len(group) == 0:
return list(self.readonly_fields) + ['id_identifier']
else:
if group[0] == 'View Users':
return list(self.readonly_fields) + \
[field.name for field in obj._meta.fields] + \
[field.name for field in obj._meta.many_to_many]

return self.readonly_fields

class ApplicationAdmin(ReadOnly):
form = AdminForm

list_display = ['id_identifier', 'first_name', 'last_name', 'email', 'phoneNumber','agreement_signed_date', 'city',
'reg_form_thumb', 'i9_form_thumb', 'w4_form_thumb']
list_filter = ['state', 'city', 'postCode']
search_fields = ['postCode', 'first_name', 'last_name', 'email', 'city', 'phoneNumber', 'project', 'phoneNumber', 'supervisor__name']
readonly_fields = ['id_identifier','created_date', 'last_update', 'reviewed_date']

当我搜索时,我应该看到来自管理员的所有数据,但不显示所有数据。请看一下图像,您会看到问题,如果我搜索 ALTON,它显示零条记录,当我过滤 ALTON 时,它显示 5 个结果。很奇怪。

Filtering data and display all forms

Searching the data and does not display anything

最佳答案

嗯!我已经解决了安装 django-haystack、elasticsearch、pyelasticsearch 模块的问题。搜索工作进展顺利。干杯!

关于mysql - 问题 Django V 1.11.16 管理搜索无法处理所有数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54032550/

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