how to open template with button click - django

I want to open another template like "booking" in following example by clicking.
projectforms
bookingform
urls
templates
index.html
projectforms
urls
bookingform.urls
urlpatterns = [
path('' , views.purchasing_view, name="purchasing"),
path('',views.add_model, name="booking"),
path('' , views.payment_view, name="payment"),
path('' , views.payment_view, name="payroll"),
]
projectforms.urls
from bookingform.views import add_model,
purchasing_view,payment_view,payroll_view,index_view
urlpatterns = [
path('admin/', admin.site.urls),
path('', index_view),
path('booking/',add_model),
path('purchasing/', purchasing_view),
path('payments/', payment_view),
path('payroll/', payroll_view),
]
How to call "booking" url with following button.
<a class="btn">Booking</a>

It was issue with urlpatterns.
projectforms.urls
urlpatterns = {
path('admin/', admin.site.urls),
path('',include(('bookingform.urls','index'), namespace='index')),
}
bookingform.urls
urlpatterns = [
url(r'^$', views.index_view, name="index"),
url(r'booking', views.add_model, name="booking"),
url(r'purchasing', views.purchasing_view, name="purchasing"),
url(r'payments', views.payment_view, name="payments"),
url(r'payroll', views.payroll_view, name="payroll"),
]

Related

why 404 in django url?

I made url for signUp page.
but it returns 404 error.
all of the other urls work well.
I don't know the reason.
main urls
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('mobileWeb.urls')),
path('api/', include('api.urls')),
]
Application urls
urlpatterns = [
path('', views.index, name='index'),
path('index', views.index, name='index'),
path('addComment', views.addComment, name='addComment'),
# users
path('signUp', views.signUp, name='signUp'),
path('accounts/', include('allauth.urls')),
path('martDetail/<int:martId>', views.martDetail, name='martDetail'),
path('trade/<int:itemId>', views.trade, name='trade'),
path('registerMart', views.registerMart, name='registerMart'),
path('registerItem', views.registerItem, name='registerName'),
path('delete', views.delete, name='delete'),
path('deleteMart', views.deleteMart, name='deleteMart'),
path('deleteItem', views.deleteItem, name='deleteItem'),
path('purchaseItem', views.purchaseItem, name='purchaseItem'),
path('selectItem', views.selectItem, name='selectItem'),
path('addStatistics', views.addStatistics, name='addStatistics'),
path('viewStatistics', views.viewStatistics, name='viewStatistics'),
path('imtPosRegister', views.imtPosRegister, name='imtPosRegister'),
path('imtPosRegisterTest', views.imtPosRegisterTest, name='imtPosRegisterTest'),
path('imtPosSaleInfoTest', views.imtPosSaleInfoTest, name='imtPosSaleInfoTest'),
path('imtPosSaleConfirmTest', views.imtPosSaleConfirmTest, name='imtPosSaleConfirmTest'),
path('fsOe9ms1b', views.fsOe9ms1b, name='fsOe9ms1b'),
path('fsOe9ms1b_ma', views.fsOe9ms1b_ma, name='fsOe9ms1b_ma'),
path('ssOe9ms1b', views.ssOe9ms1b, name='ssOe9ms1b'),
path('ssOe9ms1b_ma', views.ssOe9ms1b_ma, name='ssOe9ms1b_ma'),
path('tsOe9ms1b', views.tsOe9ms1b, name='tsOe9ms1b'),
path('tsOe9ms1b_ma', views.tsOe9ms1b_ma, name='tsOe9ms1b_ma'),
path('writeChatting', views.writeChatting, name='writeChatting'),
path('imageUploadChatting', views.imageUploadChatting, name='imageUploadChatting')
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
404 in web browser
404 in console
The url path matching is case-sensitive. In your paths you wrote:
path('signUp', views.signUp, name='signUp'),
with uppercase U in signUp. I would however advise to use only lowercase, and rewrite this to:
path('signup/', views.signUp, name='signUp'),
The same with other paths in your urls.py.
Try visiting http:\127.0.0.1:8000\signUp

multiple objects to templates with render doesn't work

I have a problem I want to send more than one object to the same page on tamplate but happens with me Problem NoReverseMatch at /
def index(request):
boards=Board.objects.all()
categorys=Category.objects.all()
context = {
'boards':boards ,
'categorys':categorys,
}
return render(request,'home.html',context=context)
urlpatterns = [
path('', views.index, name='home'),
path('track/<int:track_id>', views.record_view, name='track1'),
path('boards/<int:id>', views.boards_topic, name='boards_topic'),
]
And Try reversing the order of the last 2 urls and stay problem
urlpatterns = [
path('', views.index, name='home'),
path('', views.category_view, name='home'),
...
]
def index(request):
boards=Board.objects.all()
return render(request,'home.html',{'boards':boards})
def category_view(request):
categorys=Category.objects.all()
return render(request,'home.html',{'categorys':categorys})
What is solution and thank you

how to convert Django 2.0 url() to path()

I am unable to convert URL to path. how can I do that? and how to pass id on it.
code is following.
urlpatterns =[
url(r'^$',views.index, name="index"),
#192.0.0.1/polls/
url(r'^(?p<question_id>[0-9]+)/$',views.detail,name="detail"),
#192.0.0.1/polls/1
url(r'^(?p<question_id>[0-9]+)/result$',views.results, name="result"),
#192.0.0.1/polls/results
url(r'^(?p<question_id>[0-9]+)/votes$',views.vote, name="vote"),
#192.0.0.1/polls/results
]
Here is the sample urls for django 2.0
try this
urlpatterns = [
path('', views.index),
path('<int:question_id>/', views.detail, name="detail"),
path('<int:question_id>/result', views.results, name="result"),
.....
]
or using regex
urlpatterns = [
path('', views.index),
re_path(r'^/(?P<question_id>[0-9])/$', views.detail,name="detail"),
re_path(r'^/(?P<question_id>[0-9])/result$', views.results, name="result"),
.....
]
refer this

url conflict in Django

I get the same page regardless of what url I use. I get the home.html page for all the ones I have listed. Any suggestions would be valuable. Thanks!
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^signup/', include('log.urls')),
url(r'^login/', include('log.urls')),
url(r'^logout/', include('log.urls')),
url(r'^', include('log.urls')),
]
and from
from django.conf.urls import url
from . import views
# We are adding a URL called /home
urlpatterns = [
url(r'^signup/', views.signup, name='signup'),
url(r'^login/', views.login, name='login'),
url(r'^logout/', views.logout, name = 'logout'),
url(r'^', views.home, name='home'),
]
Your pattern is wrong, for everything you are including log.urls. It should be
project urls.py
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^', include('log.urls')),
]
and then,
log urls.py
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^signup/$', views.signup, name='signup'),
url(r'^login/$', views.login, name='login'),
url(r'^logout/$', views.logout, name = 'logout'),
url(r'^$', views.home, name='home'),
]

How to set URL include to answer root level urls in django

I have these URL files:
project/url:
urlpatterns = [
url(r'^$', include(public)), <--- URL IN ERROR!!!!
url(r'^member/', include(mviews)),
url(r'^admin/', admin.site.urls),
url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
public/url:
urlpatterns = [
url(r'^$', views.index),
url(r'^login/', views.login)
]
mviews/url:
urlpatterns = [
url(r'^$', views.index),
url(r'^api/', include(router.urls)),
]
in the first URL file, the first URL where it says include(public) is erroring out. How do I set it so public is the "home" url group? Thanks.
I think here you have typo, your the name of file is wrong(url.py), It should be urls.py
And if above line holds then you can achieve grouping urls from public module by following
url(r'^home/', include('public.urls')),
url(r'^member/', include(mviews)),
url(r'^admin/', admin.site.urls),
url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))