Я исправил это, добавив в nginx.conf:
location /djangoApp {
rewrite ^/djangoApp/(.*) /$1 break;
proxy_pass http://127.0.0.1:8888;
}
Благодаря этот обмен SO .
Используйте threadlocals, если Вы хотите получить текущего пользователя, который редактирует эту модель. Промежуточное программное обеспечение Threadlocals помещает текущего пользователя в переменную всего процесса. Возьмите это промежуточное программное обеспечение
from threading import local
_thread_locals = local()
def get_current_user():
return getattr(getattr(_thread_locals, 'user', None),'id',None)
class ThreadLocals(object):
"""Middleware that gets various objects from the
request object and saves them in thread local storage."""
def process_request(self, request):
_thread_locals.user = getattr(request, 'user', None)
Проверьте документацию, как использовать классы промежуточного программного обеспечения. Затем где угодно в коде можно звонить
user = threadlocals.get_current_user
Сама модель не знает, что что-либо о текущем пользователе кроме Вас может дать этому пользователю в представлении к форме, которая управляет объектами моделей (и в сбросе формы choices
для необходимого поля).
При необходимости в этом на администраторском сайте - можно попробовать raw_id_admin
наряду с django-granular-permissions
(http://code.google.com/p/django-granular-permissions/, но я не мог быстро получить его работающий над моим django, но это, кажется, достаточно ново для 1,0 так...).
Наконец при тяжелой необходимости в selectbox в администраторе - затем необходимо будет взломать django.contrib.admin
самостоятельно.
Я не уверен, что полностью понимаю точно, что Вы хотите сделать, но я думаю, что существует хороший шанс, что Вы доберетесь, по крайней мере, разделяют путь там с помощью пользовательского менеджера. В частности, не пытайтесь определить свои модели с ограничениями на текущего пользователя, но создать менеджера, который только возвращает объекты, которые соответствуют текущему пользователю.
Хм, я не полностью понимаю Вашего вопроса. Но если Вы не можете сделать этого, когда Вы объявляете модель, возможно, можно достигнуть того же самого с методами переопределения класса объектов, куда Вы "отправляете" пользовательский объект, возможно, запустите с конструктора.