Invalid syntax in url.py

511 views
Skip to first unread message

Matthew Yankey

unread,
Aug 6, 2015, 7:57:45 PM8/6/15
to Django users
this is the url.py

from django.conf.urls import include, url
from django.contrib import admin

urlpatterns = [
	url(r'^', .newsletter.views.home, name="home")  =========> this is the line 20
    #   url(r'^admin/', include(admin.site.urls)),


error below

Exception Type: SyntaxError at /
Exception Value: invalid syntax (urls.py, line 20)




Environment:


Request Method: GET
Request URL: http://127.0.0.1:8000/

Django Version: 1.8.3
Python Version: 2.7.9
Installed Applications:
('django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles')
Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 'django.middleware.security.SecurityMiddleware')


Traceback:
File "C:\Users\matt\Desktop\mysite\lib\site-packages\django\core\handlers\base.py" in get_response
  119.                 resolver_match = resolver.resolve(request.path_info)
File "C:\Users\matt\Desktop\mysite\lib\site-packages\django\core\urlresolvers.py" in resolve
  366.             for pattern in self.url_patterns:
File "C:\Users\matt\Desktop\mysite\lib\site-packages\django\core\urlresolvers.py" in url_patterns
  402.         patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
File "C:\Users\matt\Desktop\mysite\lib\site-packages\django\core\urlresolvers.py" in urlconf_module
  396.             self._urlconf_module = import_module(self.urlconf_name)
File "C:\Python27\Lib\importlib\__init__.py" in import_module
  37.     __import__(name)






Javier Guerra Giraldez

unread,
Aug 6, 2015, 8:06:36 PM8/6/15
to django...@googlegroups.com
On Thu, Aug 6, 2015 at 2:03 PM, Matthew Yankey <myank...@gmail.com> wrote:
> url(r'^', .newsletter.views.home, name="home")

.newsletter.... looks like import syntax, but this isn't valid in an expression

at the top include a line like

from .newsletter.views import home

and then the url entry becomes

url(r'^', home, name="home"),


--
Javier

Sylvain James

unread,
Aug 7, 2015, 10:07:55 AM8/7/15
to Django users
Hello,

You need to import views of newsletter module :

from django.conf.urls import include, url
from django.contrib import admin
import newsletter.views as newsletter_views

After that, this shortcut can be used in your urlpatterns definition (you can also add a $ in the regex:

urlpatterns = [
	url(r'^$', newsletter_views.home, name="home")  
    #   url(r'^admin/', include(admin.site.urls)),

Hope it helps,
Sylvain
Reply all
Reply to author
Forward
0 new messages