Where do I define the domain to be used by url_for() in Flask?

Mark picture Mark · Aug 28, 2012 · Viewed 37k times · Source

When I call url_for('index') it will generate '/' but there are times where I'd like it to generate 'domain.tld/' instead. I can't find in the documentation where I would specify this. Do I just need to do 'domain.tld/%s' % url_for('index')?

Answer

Sean Vieira picture Sean Vieira · Aug 28, 2012

url_for takes an _external keyword argument that will return an absolute (rather than relative) URL. I believe you will need to set a SERVER_NAME config key with your root domain to make it work correctly.