2011-10-27 3 views
1

사용자가 콘텐츠를 제공 할 수있는 사이트가 있다고 가정 해 보겠습니다.사이트에 기여한 후 사용자 등록은? 장고에서

사용자가 익명으로 제공되어 세션이 만료 된 후에 다시 기고 한 경우 기부금은 익명으로 처리됩니다.

사용자가 익명으로 콘텐츠를 제공 한 다음 계정을 만드는 경우이 세션 동안 모든 사용자의 기여를 사용자 계정에 어떻게 적용 할 수 있습니까?

답변

1

이 패턴은 종종 "지연 등록"또는 "지연 서명"이라고합니다. 개인적으로 사용하지는 않았지만 이런 유형의 기능인 http://pypi.python.org/pypi/django-lazysignup/을 지원하는 장고 앱이 있습니다.

0

아마도이 세션 ID에 대해 확인을 실행하기 위해 등록 된 콘텐츠 (속성)의 일부로 세션 ID를 저장할 수 있습니다.

2

게시 된 콘텐츠 ID를 세션에 저장하는 것이 좋습니다.

콘텐츠에 저장된 추가 데이터가 없습니다. 가짜 사용자 목록은 계속 증가하고 있습니다.

가장 중요한 점은 디자인 패턴이 단순합니다. 문자 그대로 몇 줄의 코드와 나머지 장고의 변하지 않은 행동. 단순함이 중요합니다!

# registration_view 

if form.is_valid(): 
    user = form.save() 
    posted_content = request.session.get('posted_content') 
    if posted_content: 
     Content.objects.filter(id__in=posted_content).update(user=user) 

세션이 만료 된 사용자에게 크레딧을주는 것에 대해서는 단서가 없습니다.