0
다음 코드가 있는데 두 가지 문제가 있습니다. 1. 조인을 추가하지 못하고 페이지에 표시되지 않습니다. 2. 관리 인터페이스가로드되지 않습니다.아래 오류로 인해 관리자 인터페이스를로드 할 수 없습니다.
나는 DB를 철저히 확인하고 실제로 도움이 필요한 DB를 다시 만들었습니다.
Views.py. 나는 예외를 주석 한 후 무엇입니까
from django.conf import settings
from django.shortcuts import render, HttpResponseRedirect, Http404
from.models import Join
from .forms import EmailForm, JoinForm
def get_ip(request):
try:
x_forwarded = request.META.get("HTTP_X_FORWARDED_FOR")
if x_forwarded:
ip = x_forwarded.split(",")[0]
else:
ip = request.META.get("REMOTE_ADDR")
except:
ip = ""
return ip
import uuid
def get_ref_id():
ref_id = str(uuid.uuid4())[:11].replace('-', '').lower()
try:
id_exists = Join.objects.get(ref_id=ref_id)
get_ref_id()
except:
return ref_id
def home(request):
try:
join_id = request.session['join_id_ref']
obj = Join.objects.get(id=join_id)
except:
obj = None
form = JoinForm(request.POST or None)
if form.is_valid():
new_join = form.save(commit=False)
email = form.cleaned_data['email']
new_join_old, created = Join.objects.get_or_create(email=email)
if created:
new_join_old.ref_id = get_ref_id()
if not obj == None:
new_join_old.friend = obj
new_join_old.ip_address = get_ip(request)
new_join_old.save()
return HttpResponseRedirect("/%s" %(new_join_old.ref_id))
context = {"form": form}
template = 'home.html'
return render(request, template, context)
def share(request, ref_id):
#try:
join_obj = Join.objects.get(ref_id=ref_id)
friends_referred = Join.objects.filter(friend=join_obj)
count = join_obj.referral.all().count()
ref_url = settings.SHARE_URL + str(join_obj.ref_id)
context = {"ref_id": join_obj.ref_id, "count": count, "ref_url": ref_url}
template = "share.html"
return render(request, template, context)
#except:
#raise Http404
오류 메시지는 다음과 같습니다
DoesNotExist at /admin
Join matching query does not exist. Lookup parameters were {'ref_id': u'admin'}
Urls.py은 다음을 포함한다. 라인
url(r'^(?P<ref_id>.*)$', 'joins.views.share', name='share'),
경기 admin/
에서
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
url(r'^$', 'joins.views.home', name='home'),
url(r'^(?P<ref_id>.*)$', 'joins.views.share', name='share'),
)
첫째,''def share''의 의도를 바르게 수정해야합니다. – doniyor
둘째,''join_obj = Join.objects.get (ref_id = ref_id)''이것은 오류 메시지가 아닙니다 – doniyor
urls.py를 보여주십시오. 개체가 실제로 요청한 db에 있는지 확인하십시오. – doniyor