2014-04-15 10 views
0

저는 웹 애플리케이션 중 하나에서 userena를 사용하고 있습니다. userena 프로필 템플릿 (profile_detail.html) 난 등의 앵커 태그에 추가 한 ..인수 '()'및 키워드 인수 '{}'이 (가)없는 'send_referral_code'에 대해 역방향입니다.

<a href = {% url 'send_referral_code'%}>Click here</a> 

해주기 여기 send_referral_code는 urls.py에서 선언 이름 값의 urls.py이다 ..

from django.conf.urls import patterns, url, include 
from django.conf import settings 

from mail import views 

urlpatterns = patterns('', 

    url(r'^$', views.send_referral_code,name='send_referral_code'), 

) 

및 views.py ...

views.py와 urls.py 모두 언급에

있는 다른 응용 프로그램, 즉 '메일'

이 내 주요 urls.py입니다 .. 지금

from django.conf.urls import patterns, include, url 

# Uncomment the next two lines to enable the admin: 
from django.contrib import admin 
admin.autodiscover() 
import photo 



urlpatterns = patterns('', 
    # Examples: 
    #url(r'^$', 'auth.views.home', name='home'), 
    # url(r'^shutterstock/', include('shutterstock.foo.urls')), 


    # Uncomment the admin/doc line below to enable admin documentation: 
    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')), 

    # Uncomment the next line to enable the admin: 

    url(r'^accounts/', include('userena.urls')), 
    url(r'^user_upload/',include('myprofile.urls')), 
    url(r'^admin/', include(admin.site.urls)), 
    url(r'^showphoto/',include('photo.urls')), 
    url(r'^mailing/',include('mail.urls')), 




) 

from django.conf import settings 
if settings.DEBUG: 
    urlpatterns += patterns(
     'django.views.static', 
     (r'media/(?P<path>.*)', 
     'serve', 
     {'document_root': settings.MEDIA_ROOT}), 
     (r'^something/hard/to/guess/', include('paypal.standard.ipn.urls')),) 

내가는 무엇입니까 오류, 즉 내가 내 사이트를 실행하려고하고이 라인

<a href = {% url 'send_referral_code'%}>Click</a> 
을 표시하면서 '{}'를 찾을 수없는 인수 'send_referral_code' '()'및 키워드 인수

, 내 profile_detail.html 파일에 userena apps.Now에서이 문제를 해결할 수 있습니까?

+0

귀하의 도움이 될 것인가? http://stackoverflow.com/posts/comments/35235658?noredirect=1 – Rexford

답변

0

보기 코드가 오류를 반환하기 때문에 작동하지 않는 이유입니다. 모든 뷰 메서드는 HttpResponse 개체를 반환해야합니다.

return 문이없는 파이썬의 모든 메소드는 None을 반환합니다. 뷰 메소드에 return 문이 없기 때문에 뷰가 작동하지 않게하는 None을 반환합니다.

대신을 시도해보십시오

from django.shortcuts import redirect 

def send_referral_code(request): 
    referral_code = MyProfile.objects.get(user = request.user) 
    send_mail('referral_code', 
       'This is Your Referral Code', 
       '[email protected]', 
       ['[email protected]'], 
       fail_silently=False) 
    return redirect('/') 
0

나는, 내가 send_mail 함수 매개 변수의 첫 번째 인수로 변수 값을 넣어 가지고 있기 때문에, 문제가 발생하는 내 자신의 해답을 발견, 즉,

입니다
send_mail('referral_code','This is Your Referral Code','[email protected]', ['[email protected]'],fail_silently = False) 

난 그냥 그냥 같이 변경해야 ... 지금

send_mail('Referral Code','This is Your Referral Code','[email protected]',['[email protected]'],fail_silently = False) 

의 작업 아를 l, probablely the error 'send_referral_code'인수가 '()'이고 키워드 인수가 '{}'인데 반하여이 표시됩니다. 단순한 subject 대신 varible을 넣었 기 때문입니다. 그 자리에 varible을 넣었으므로 그 이유는 그것의 모순이다.

관련 문제