def get_web_server_base_url(request, settings_override_name=None):
# Allow the value in the settings file to override any computed value.
url = None
if settings_override_name:
url = getattr(settings, settings_override_name, None)
if not url:
protocol = request.is_secure() and 'https' or 'http'
host = request.get_host()
url = "{0}://{1}".format(protocol, host)
return url
I didn't know about Site or RequestSite at the time. Perhaps I could
have used them, but:
1. I wanted the protocol (http, or https) to be correct also. Would
RequestSite have done that for me?
2. I wanted to be able to override the hostname with the primary
name of the server (via an entry in settings.py) even if the request
was sent to a secondary name or the IP address of the server.
I suppose Site would have allowed this, via storing the name in
the DB, but that seems like more work than a settings.py file,
especially since I already have convenient mechanism to manage
different settings.py files when deployed on different servers.
Thoughts?
--Fred
Fred Stluka -- mailto:fred@bristle.com -- http://bristle.com/~fred/
Bristle Software, Inc -- http://bristle.com -- Glad to be of service!
Open Source: Without walls and fences, we need no Windows or Gates.
Fred Stluka -- mailto:fred@bristle.com -- http://bristle.com/~fred/
Bristle Software, Inc -- http://bristle.com -- Glad to be of service!
Open Source: Without walls and fences, we need no Windows or Gates.
On 11/29/13 6:09 AM, Vibhu Rishi wrote:
This seems to be working and quite simple too !in the email template now I changed it to :Thanks for the links. I had done the google searches and gone through them, but they seemed to me a lot of work to get something simple.I finally did the following. Any comments welcome if this is not a good way to do.
In my view, I pass a context object of the request to the email template. I need the request as i also want to put in the user's name.
<A href="http://{{request.get_get_host}}{% url "project.views.details" project.id %}">{{ project }}</a>
Regards,
Vibhu
--
On Fri, Nov 29, 2013 at 4:26 PM, Rafael E. Ferrero <rafael.ferrero@gmail.com> wrote:
--
2013/11/29 Vibhu Rishi <vibhu.rishi@gmail.com>
--I have the following in the html email template :The problem is that i am getting a relative url in the tempaltehi,Email is working fine.
I have a setup where I have a project details page, and I can do a "send email" which should send the email with the URL.
<A href="{% url "project.views.details" project.id %}">{{ project }}</a>
This give me a URL in the email as /projects/1 ( 1 being the project id)
How do i prepend the url of the server here ? e.g. I want this to be http://localhost:8000/projects/1
Vibhu
--
Simplicity is the ultimate sophistication. - Leonardo da Vinci
Life is really simple, but we insist on making it complicated. - Confucius
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 django-users+unsubscribe@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CAPiONwn6cHwi51fJ63oFUOLof2QmFqsSeqz2VeOM_Jxk%2BaUYGQ%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.
--
Rafael E. Ferrero
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 django-users+unsubscribe@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CAJJc_8WWUyfwYd1cjxNzvm0xe5LjUTNDjPGDnYaaxE9w3B1C-g%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.
--
Simplicity is the ultimate sophistication. - Leonardo da Vinci
Life is really simple, but we insist on making it complicated. - Confucius
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 django-users+unsubscribe@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CAPiONw%3D7Uh9uReNyCCzhGb%3D09WHCzY9rSPp9mYn_eJRsHwmNpw%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.
No comments:
Post a Comment