Возможно, у Вас есть определенная причина использования os.system()
. Но если не необходимо, вероятно, использовать subprocess
модуль . Можно определить каналы непосредственно и избегать использования оболочки.
следующее от PEP324:
Replacing shell pipe line ------------------------- output=`dmesg | grep hda` ==> p1 = Popen(["dmesg"], stdout=PIPE) p2 = Popen(["grep", "hda"], stdin=p1.stdout, stdout=PIPE) output = p2.communicate()[0]
вы также можете «обезьяна исправить» существующую модель пользователя где-нибудь в вашем models.py, и это должно работать. В своем коде просто продолжайте использовать исходный класс.
User.add_to_class('friends',models.ManyToManyField('self', symmetrical=False))
Я не уверен, что вы можете сделать это точно, но вы можете получить доступ к своим атрибутам CustomUser с помощью функции user_profile Django.
В ваших settings.py:[12106 sizes На ваш взгляд:
user_friends = user.get_profile().friends
Для получения дополнительной информации ознакомьтесь с ссылкой .
Вы можете иметь в виду, что если вам нужно поддерживать многоязычную среду (например, VB), все настраиваемые фреймворки кода (я могу напрямую поговорить с Moq и RhinoMocks ) будут болезненными, учитывая (отсутствие) синтаксиса анонимного делегата / лямбда в VB.
Все это объясняется здесь . Проблема request.user была решена с помощью бэкэнда аутентификации. Я реализовал специального пользователя в соответствии с инструкциями автора и с тех пор счастлив.