Re: [Django] #25598: support for SCRIPT_NAME for static tag and FileField.url

2015-10-23 Thread Django
#25598: support for SCRIPT_NAME for static tag and FileField.url
-+-
 Reporter:  DheerendraRathor |Owner:  nobody
 Type:  New feature  |   Status:  new
Component:  contrib.staticfiles  |  Version:  master
 Severity:  Normal   |   Resolution:
 Keywords:  script_name, | Triage Stage:
  static_url, media_url  |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by timgraham):

 * component:  Uncategorized => contrib.staticfiles


Comment:

 I see. I guess the idea would be to use `get_script_prefix()` like
 `reverse()` does as I don't think we have access to `request` everywhere
 we need it. It seems like some public APIs like `get_static_url()` and
 `get_media_url()` would replace accessing the settings directly whenever
 building URLs. For backwards compatibility, possibly these functions could
 try to detect if the setting is already prefixed appropriately.

 Removing the prefix from the settings, however, means that the URLs are no
 longer correct when generated outside of a request/response cycle though
 (#16734). I'm not sure if it might create any practical problems, but we
 might think about addressing that issue first.

--
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/074.12b43b779a8c30ccc5d88243238aa87b%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #25598: support for SCRIPT_NAME for static tag and FileField.url

2015-10-23 Thread Django
#25598: support for SCRIPT_NAME for static tag and FileField.url
-+-
 Reporter:  DheerendraRathor |Owner:  nobody
 Type:  New feature  |   Status:  new
Component:  Uncategorized|  Version:  master
 Severity:  Normal   |   Resolution:
 Keywords:  script_name, | Triage Stage:
  static_url, media_url  |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by claudep):

 I think that the idea basically makes sense. Ideally, a Django instance
 shouldn't need to know at which subpath it is being deployed, as this can
 be considered as purely sysadmin stuff. It would be a good separation of
 concerns. For example, the Web administrator may change the
 WSGIScriptAlias from /foo to /bar and the application should continue
 working. Of course, this only applies when *_URL settings are not full
 URIs.

 In practice, it's very likely that many running instances are adapting
 their *_URL settings to include the base script path, hence the behavior
 change would be backwards incompatible. The question is whether the change
 is worth the incompatibility.

--
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/074.dd8e05c97fd0e3e732a70ed551b33ca9%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #25598: support for SCRIPT_NAME for static tag and FileField.url

2015-10-23 Thread Django
#25598: support for SCRIPT_NAME for static tag and FileField.url
-+-
 Reporter:  DheerendraRathor |Owner:  nobody
 Type:  New feature  |   Status:  new
Component:  Uncategorized|  Version:  master
 Severity:  Normal   |   Resolution:
 Keywords:  script_name, | Triage Stage:
  static_url, media_url  |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by timgraham):

 What I meant was that I don't think Django should automatically use
 SCRIPT_NAME in generating those URLs. If you're running your site on a
 subpath, then you should set your STATIC_URL to
 'http://example.com/subpath/static/' or whatever. However, you might not
 even be hosting static and uploaded files on the same domain as your site
 (in fact, for user-uploaded files, you shouldn't do that
 [https://docs.djangoproject.com/en/stable/topics/security/#user-uploaded-
 content for security reasons]) in which case `SCRIPT_URL` is irrelevant in
 constructing the static/media URLs.

 How would the change make it easier to setup sites?

--
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/074.88e8e34ec1716fd56a77a2e9cc774e04%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #25598: support for SCRIPT_NAME for static tag and FileField.url

2015-10-23 Thread Django
#25598: support for SCRIPT_NAME for static tag and FileField.url
-+-
 Reporter:  DheerendraRathor |Owner:  nobody
 Type:  New feature  |   Status:  new
Component:  Uncategorized|  Version:  master
 Severity:  Normal   |   Resolution:
 Keywords:  script_name, | Triage Stage:
  static_url, media_url  |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by DheerendraRathor):

 This is not a patch. This is just an idea I got about the patch for `{%
 static %}` only. The patch will (probably) involve `FileSystemStorage` and
 `StaticFileSystemStorage` classes.

 The main idea behind this feature was that Django will auto detect
 script_name header and  use that accordingly for creating static and media
 urls. This will reduce human efforts for setting up sites in future. This
 patch will also take time to develop so it can be added in Django2.0
 timeline.

--
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/074.eb8291d5cb74766bdbe9dd604dcbe825%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #25598: support for SCRIPT_NAME for static tag and FileField.url

2015-10-23 Thread Django
#25598: support for SCRIPT_NAME for static tag and FileField.url
-+-
 Reporter:  DheerendraRathor |Owner:  nobody
 Type:  New feature  |   Status:  new
Component:  Uncategorized|  Version:  master
 Severity:  Normal   |   Resolution:
 Keywords:  script_name, | Triage Stage:
  static_url, media_url  |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by timgraham):

 * needs_better_patch:   => 0
 * needs_tests:   => 0
 * needs_docs:   => 0


Comment:

 This change doesn't seem correct to me (for one, it seems like it could
 break existing sites). Why not include the appropriate prefix in your
 `STATIC_URL` and `MEDIA_URL` settings?

--
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/074.115df90ca500b01afe6ade412124a620%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


[Django] #25598: support for SCRIPT_NAME for static tag and FileField.url

2015-10-23 Thread Django
#25598: support for SCRIPT_NAME for static tag and FileField.url
--+
 Reporter:|  Owner:  nobody
  DheerendraRathor|
 Type:  New   | Status:  new
  feature |
Component:|Version:  master
  Uncategorized   |
 Severity:  Normal|   Keywords:  script_name, static_url, media_url
 Triage Stage:|  Has patch:  0
  Unreviewed  |
Easy pickings:  0 |  UI/UX:  0
--+
 By default, `static` tag just appends `STATIC_URL` in the path. When
 running on subpath it results in incorrect static url.

 This problem can be solved with appending `SCRIPT_NAME` in to `SCRIPT_URL`
 in `settings.py`

 This can be easily added into default django `static` tag and
 `django.contrib.staticfiles` tag as following:


 {{{
 def render(self, context):
 url = self.url(context)
 # Updating url here with request.META['SCRIPT_NAME']
 if self.varname is None:
 return url
 context[self.varname] = url
 return ''
 }}}

 On more research I found that `FileSystemStorage` and `StaticFilesStorage`
 ignores `script_name` as well.
 We might have to do a lot of changes but I think it's worth the efforts.

--
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/059.8b313d182aa162563c2e83faa03c53c2%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.