আমার জন্য, আমার জ্যাঙ্গো প্রকল্পে এই ত্রুটিটি নিম্নলিখিত কারণে ঘটেছে:
আমি নীচে হিসাবে আমার প্রকল্পের টেমপ্লেট ফোল্ডারে আমার হোম এইচটিএমএল উপস্থিত একটি নতুন হাইপারলিংক প্রবেশ করিয়েছি:
<input type="button" value="About" onclick="location.href='{% url 'about' %}'">
ভিউ.পি-তে আমার গণনা এবং সম্পর্কে নিম্নলিখিত সংজ্ঞা ছিল:
def count(request):
fulltext = request.GET['fulltext']
wordlist = fulltext.split()
worddict = {}
for word in wordlist:
if word in worddict:
worddict[word] += 1
else:
worddict[word] = 1
worddict = sorted(worddict.items(), key = operator.itemgetter(1),reverse=True)
return render(request,'count.html', 'fulltext':fulltext,'count':len(wordlist),'worddict'::worddict})
def about(request):
return render(request,"about.html")
- Urls.py এ, আমার কাছে নিম্নলিখিত url প্যাটার্নগুলি ছিল:
urlpatterns = [
path('admin/', admin.site.urls),
path('',views.homepage,name="home"),
path('eggs',views.eggs),
path('count/',views.count,name="count"),
path('about/',views.count,name="about"),
]
যেমনটি দেখা যাবে। 3 এর উপরে, শেষ url প্যাটার্নে, আমি ভুলভাবে ভিউসকোয়েন্টকে কল করছিলাম যেখানে আমার ভিউস.বাউট সম্পর্কে কল করতে হবে। fulltext = request.GET['fulltext']
গণনা ফাংশনে এই লাইনটি (যা ভুলভাবে urlpatterns এ ভুল প্রবেশের কারণে ডাকা হয়েছিল) ভিউ.পি এর মাল্টিভালিউডিকুইডকিয়ারের ব্যতিক্রম ছুঁড়েছিল।
তারপরে আমি url.py এ শেষ ইউআরএল প্যাটার্নটি সঠিক একটিতে পরিবর্তন করেছি path('about/',views.about,name="about")
এবং সবকিছু ঠিকঠাক কাজ করেছে।
স্পষ্টতই, জ্যাঙ্গোতে একজন নবাগত প্রোগ্রামার ভুলভাবে অন্য কোনও ভিউ ফাংশনটি ইউআরএলের জন্য কল করার জন্য ভুল করে ফেলতে পারে, যা উদ্দেশ্যমূলক আচরণের পরিবর্তে বিভিন্ন সেট পরামিতিগুলির প্রত্যাশা বা তার রেন্ডার কলগুলিতে বিভিন্ন সেট অবজেক্ট করে।
আশা করি এটি কিছু নবাগত প্রোগ্রামারকে জ্যাঙ্গো করতে সহায়তা করবে।