Thanks for this link, I saw it Saturday.
But the problem is the same, I have to login to use template like that:

{% if user.is_authenticated %}
  lol
{% else %}
  not lol
{% endif %}

and my view.py is somethink like that:

      username = request.POST['user']
      password = request.POST['password']
      user = authenticate(username=username, password=password)
      if user is not None:
        login(request, user)

Do I have to overload login method to use it like that ?


On Mon, Jan 18, 2010 at 9:32 AM, nostradamnit <sam.cranf...@gmail.com> wrote:
> Olivier,
>
> Look at this - 
> http://stackoverflow.com/questions/1057149/django-users-and-authentication-from-external-source
>
> I imagine your problem comes from the fact that django.contrib.auth
> User is tied to the DB
>
> Sam
>
> On Jan 18, 12:09 am, Olivier Détour <chino540...@gmail.com> wrote:
>> up
>>
>> 2010/1/16 Détour Olivier <chino540...@gmail.com>:
>>
>>
>>
>> > Hi,
>> > I would create my own auth backend. I tried to understand and trace
>> > source code.
>> > I want to create an internal DB with SHA1 and username.
>> > But I cannot login, Django says me I do not set DB ENGINE. I would not
>> > use something like MySQL or any DB Engine.
>>
>> > Here is my source code:
>> > mybackend.py:
>>
>> > from django.contrib.auth.models import User
>> > from django.contrib.auth.backends    import RemoteUserBackend
>>
>> > class MyUser (User):
>> >  def save (self):
>> >    """saving to DB disabled"""
>> >    pass
>>
>> >  objects = None # we cannot really use this w/o local DB
>> >  username = ""  # and all the other properties likewise.
>> >                 # They're defined as model.CharField or similar,
>> >                 # and we can't allow that
>>
>> >  def get_group_permissions (self):
>> >    """If you don't make your own permissions module,
>> >       the default also will use the DB. Throw it away"""
>> >    return [] # likewise with the other permission defs
>>
>> >  def get_and_delete_messages (self):
>> >    """Messages are stored in the DB. Darn!"""
>> >    return []
>>
>> > class WWWBackend (RemoteUserBackend):
>> >  # Create a User object if not already in the database?
>> >  create_unknown_user = False
>>
>> >  def get_user (self, user_id):
>> >    user = somehow_create_an_instance_of(MyUser, user_id)
>> >    return user
>>
>> >  def authenticate (self, username=None, password=None):
>> >    if username == "lol" and password == "lol":
>> >      user = MyUser(username=username, password=password)
>> >      return user
>> >    return None
>>
>> > my view.py:
>>
>> > from django import forms
>> > from django.core.context_processors import csrf
>> > from django.template import RequestContext, loader
>> > from django.http import HttpResponse, HttpResponseRedirect
>> > from django.contrib.auth import authenticate, login
>>
>> > #! Form Upload Object
>> > class LoginForm (forms.Form):
>> >  user     = forms.CharField(widget = forms.TextInput)
>> >  password = forms.CharField(widget = forms.PasswordInput)
>>
>> > def index(request):
>> >  if request.method == 'POST':
>> >    form = LoginForm(request.POST)
>> >    if form.is_valid():
>> >      # FIXME: Check if file is good.
>> >      #handle_uploaded_torrent(request.FILES['file'])
>> >      username = request.POST['user']
>> >      password = request.POST['password']
>> >      user = authenticate(username=username, password=password)
>> >      if user is not None:
>> >        login(request, user)
>>
>> >      return HttpResponseRedirect('/')
>> >  else:
>> >    form = LoginForm()
>>
>> >  t = loader.get_template('template/index.html')
>> >  c = RequestContext(request, {
>> >      'login_form': form,
>> >  })
>> >  return HttpResponse(t.render(c))
>>
>> > Thanks for reponses,
>> > Regards,
>>
>> --
>> Olivier Détour
>> Sent from Reserved, ***
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Django users" group.
> To post to this group, send email to django-us...@googlegroups.com.
> To unsubscribe from this group, send email to 
> django-users+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/django-users?hl=en.
>
>
>
>



-- 
Olivier Détour
-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-us...@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.


Reply via email to