as you mentioned that you're using django 3.2 but your urls.py file is
following the pattern of django 1.7.
use your urls.py this way : path('your polls url here', views.index,
name='index')

On Mon, Jul 26, 2021 at 6:45 PM Zain <[email protected]> wrote:

> Had the same issue.
>
> Solved, make sure you run each edited python file during the tutorial.
> I guess it needs to update. All I know is this fixed the issue.
>
> On Monday, April 19, 2021 at 2:07:34 AM UTC+10 [email protected] wrote:
>
>> I followed the same tutorial on 17th April 2021 with Python 3.9.2 and
>> Django     3.2 and have exactly the same problems as mentioned above.
>>
>>     path('', views.index, name='index'),
>>
>> AttributeError: module 'polls.views' has no attribute 'index'
>>
>> any help on how can I debug this? I am a django noob
>>
>> On Wednesday, 19 April 2017 at 16:31:59 UTC+2 [email protected] wrote:
>>
>>> Thanks for your reploy.
>>>
>>> Actually I followed the tutorial exactly.
>>>
>>> My polls/views.py has:
>>>
>>> from django.http import HttpResponse
>>>
>>>
>>> def index(request):
>>>     return HttpResponse("Hello, world. You're at the polls index.")
>>>
>>> My polls/urls.py has:
>>>
>>> from django.conf.urls import url
>>>
>>> from . import views
>>>
>>> urlpatterns = [
>>>     url(r'^$', views.index, name='index'),
>>> ]
>>>
>>>
>>> On Wednesday, 19 April 2017 15:43:57 UTC+2, m712 - Developer wrote:
>>>
>>>> You didn't give us enough info, but I am thinking that you don't have
>>>> an index() function in your polls/views.py. Start the tutorial from the
>>>> beginning and follow it closely.
>>>> On Apr 19, 2017 4:17 PM, Billy Lin <[email protected]> wrote:
>>>>
>>>> I'm following the getting started tutorial 01 and running into issues
>>>> after creating the polls app. Can someone please help?
>>>>
>>>> I'm using Python 3.6.1 and Django 1.11.
>>>>
>>>> Here's the detailed trace:
>>>>
>>>> Performing system checks...
>>>> Unhandled exception in thread started by <function
>>>> check_errors.<locals>.wrapper at 0x04222810>
>>>> Traceback (most recent call last):
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\utils\autoreload.py",
>>>> line
>>>> 227, in wrapper
>>>>     fn(*args, **kwargs)
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\core\management\commands\ru
>>>> nserver.py", line 125, in inner_run
>>>>     self.check(display_num_errors=True)
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\core\management\base.py",
>>>> l
>>>> ine 359, in check
>>>>     include_deployment_checks=include_deployment_checks,
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\core\management\base.py",
>>>> l
>>>> ine 346, in _run_checks
>>>>     return checks.run_checks(**kwargs)
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\core\checks\registry.py",
>>>> l
>>>> ine 81, in run_checks
>>>>     new_errors = check(app_configs=app_configs)
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\core\checks\urls.py",
>>>> line
>>>> 16, in check_url_config
>>>>     return check_resolver(resolver)
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\core\checks\urls.py",
>>>> line
>>>> 26, in check_resolver
>>>>     return check_method()
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\urls\resolvers.py",
>>>> line 25
>>>> 4, in check
>>>>     for pattern in self.url_patterns:
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\utils\functional.py",
>>>> line
>>>> 35, in __get__
>>>>     res = instance.__dict__[self.name] = self.func(instance)
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\urls\resolvers.py",
>>>> line 40
>>>> 5, in url_patterns
>>>>     patterns = getattr(self.urlconf_module, "urlpatterns",
>>>> self.urlconf_module)
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\utils\functional.py",
>>>> line
>>>> 35, in __get__
>>>>     res = instance.__dict__[self.name] = self.func(instance)
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\urls\resolvers.py",
>>>> line 39
>>>> 8, in urlconf_module
>>>>     return import_module(self.urlconf_name)
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\importlib\__init__.py",
>>>> line 126, in import_modu
>>>> le
>>>>     return _bootstrap._gcd_import(name[level:], package, level)
>>>>   File "<frozen importlib._bootstrap>", line 978, in _gcd_import
>>>>   File "<frozen importlib._bootstrap>", line 961, in _find_and_load
>>>>   File "<frozen importlib._bootstrap>", line 950, in
>>>> _find_and_load_unlocked
>>>>   File "<frozen importlib._bootstrap>", line 655, in _load_unlocked
>>>>   File "<frozen importlib._bootstrap_external>", line 678, in
>>>> exec_module
>>>>   File "<frozen importlib._bootstrap>", line 205, in
>>>> _call_with_frames_removed
>>>>   File "C:\Users\cephalin\Repos\django\mysite\mysite\urls.py", line 20,
>>>> in <module>
>>>>     url(r'^polls/', include('polls.urls')),
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django\conf\urls\__init__.py",
>>>> lin
>>>> e 50, in include
>>>>     urlconf_module = import_module(urlconf_module)
>>>>   File
>>>> "C:\Users\cephalin\AppData\Local\Programs\Python\Python36-32\lib\importlib\__init__.py",
>>>> line 126, in import_modu
>>>> le
>>>>     return _bootstrap._gcd_import(name[level:], package, level)
>>>>   File "<frozen importlib._bootstrap>", line 978, in _gcd_import
>>>>   File "<frozen importlib._bootstrap>", line 961, in _find_and_load
>>>>   File "<frozen importlib._bootstrap>", line 950, in
>>>> _find_and_load_unlocked
>>>>   File "<frozen importlib._bootstrap>", line 655, in _load_unlocked
>>>>   File "<frozen importlib._bootstrap_external>", line 678, in
>>>> exec_module
>>>>   File "<frozen importlib._bootstrap>", line 205, in
>>>> _call_with_frames_removed
>>>>   File "C:\Users\cephalin\Repos\django\mysite\polls\urls.py", line 6,
>>>> in <module>
>>>>     url(r'^$', views.index, name='index'),
>>>> AttributeError: module 'polls.views' has no attribute 'index'
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Django users" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at https://groups.google.com/group/django-users.
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/django-users/b77a1a74-b07f-4277-98da-23b46ca7d2e4%40googlegroups.com
>>>> <https://groups.google.com/d/msgid/django-users/b77a1a74-b07f-4277-98da-23b46ca7d2e4%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>> --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/django-users/cc9b3670-d625-4505-91a1-fe63041c1ae3n%40googlegroups.com
> <https://groups.google.com/d/msgid/django-users/cc9b3670-d625-4505-91a1-fe63041c1ae3n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/CAKPY9pnDwZbJW%3DPfuVoDHmPR930iKrYOKO963v%2BSN3V20x8u%2Bw%40mail.gmail.com.

Reply via email to