^Django build_absolute_uri() issue : double slashes in url

73 views
Skip to first unread message

valentin jungbluth

unread,
Feb 22, 2019, 4:45:51 AM2/22/19
to Django users
Hello guys,

I'm using build_absolute_uri() in order to create the beginning of my download link which is sent by email.

I'm working with django 1.11.20

My code :

I have in my code, this view which let to create my url :

   
class FileExport(View):
   
       
def my_export(self, request, **kwargs):
            kwargs
['user_email'] = request.user.email
            kwargs
['user'] = request.user.name
            kwargs
['url'] = request.build_absolute_uri(reverse('home'))
            my_export
.delay(query_params=request.GET, **kwargs)
           
           
return render(request, 'app/celery_export.html')



My url kwargs returns : http://localhost:8000/

The kwargs['url'] is used to create my download link in my message.html file :

   
<a href="{{ url }}{% url 'app:export_download' token=token %}">Download link to your export file</a>


I have my project urls.py file :

   
urlpatterns = [
        url
(r'^$', RedirectView.as_view(pattern_name='app:home'), name='home'),]


I have my urls.py app file like this :

   
app_name = 'app'
   
    urlpatterns
= [
        url
(r'^home$', HomeView.as_view(), name='home'),
   
        url
(r'^export/(?P<model>[-\w]+)/(?P<search_info>.*)/$', FileExport.as_view(), name='my_export'),
        url
(r'^export/(?P<model>[-\w]+)/$', FileExport.as_view(), name='my_export'),
        url
(r'^download_export/(?P<token>.*)/$', ExportDownloadView.as_view(), name='export_download'),
   
]


My issue :

When I receive the email, the link generated inside looks like this :

http://localhost:8000//download_export/<my_file>/


As you can see, I'm getting this // which create an issue. By removing one, it works.

It works on my qualification environment (distant server), but not in localhost. Do you have some ideas ?

Thank you !


Reply all
Reply to author
Forward
0 new messages