나는 다음 쿼리취급 DB 쿼리 및 필터링 장고 및 유니 코드
list = AboutMe.objects.order_by('MyLinkedInLastName').filter(Q(MyGender__contains=Gender1))
으로 필터링하고있어하지만 유니 코드 문자열을 사용하는 경우가 작동하지 않습니다. 설명하겠습니다. 표에서 데이터 필드는 예를 들어 [u'_M', u'_F']
으로 저장됩니다. 그리고 다른 레코드의 행과 필드를 가져 오는 것은 예를 들어 [u'_M '] 일 수 있습니다. 이 텍스트를 제거하면 (즉, []을 (를) 제거하고 표시하면 u'_M '이 표시되고 필터에서 Gender1을 사용합니다. 이제는 이것이 효과가없는 것 같습니다. 하지만 필터에 '_M'을 하드 코딩하면 작동합니다. 나는 무슨 일이 벌어지고 있는지 이해하지 못합니다. 암묵적인 전환이 진행되고 있습니까?
나는이 여기 목적으로하지만
list = AboutMe.objects.order_by('MyLinkedInLastName').filter(Q(MyGender__contains='_M'))
가 BTW 내가 단순화 쿼리 작업 표시
Gender1 = GenderField.split()[0].strip('[],')
에서 Gender1를 얻을. 그것은 인코딩 문제가있는 것 같습니다. 이 작업을 훌륭하고 강력하게 수행하는 가장 좋은 방법은 무엇입니까?
첫 번째 쿼리의 SQL 덤프를 게시 할 수 있습니까? – mariodev