Джанго Питон и Пядь
Я пытаюсь создать простую форму поиска в Django для запроса Active Directory, но я продолжаю получать
com_error at /console/users/
(-2147221008, 'CoInitialize has not been called.', None, None)
views.py:
from pyad import pyad, aduser, adquery
@login_required
def users(request):
if request.method == 'POST':
form = UserSearchForm(request.POST)
if form.is_valid():
user = pyad.from_cn(form.cleaned_data['cn'])
return render(request, 'console/users/details.html', {'user': user})
else:
form = UserSearchForm()
return render(request, 'console/users/index.html', {'form': form})
forms.py
from django import forms
class UserSearchForm(forms.Form):
cn = forms.CharField(label='Common Name', max_length=100)
Python 3.6. Джанго 2.0.3 пяд 0.5.20
0 ответов
Вам необходимо запустить и завершить процесс создания потоков. Смотрите пример кода ниже:
@login_required
def users(request):
import pythoncom <=== Here
pythoncom.CoInitialize() <=== Here
from pyad import pyad, aduser, adquery
if request.method == 'POST':
form = UserSearchForm(request.POST)
if form.is_valid():
user = pyad.from_cn(form.cleaned_data['cn'])
return render(request, 'console/users/details.html', {'user': user})
else:
form = UserSearchForm()
return render(request, 'console/users/index.html', {'form': form})
pythoncom.CoUninitialize() <=== And Here
Это должно привести вас к следующему шагу.