On Wed, Jul 9, 2014 at 8:28 AM, Jole Bradbury <eghba...@miamioh.edu> wrote:
> Aha, that does make sense... And yes the Django import failed. My PATH has > Python version 3.4 on it which should have been a dead giveaway since Sage > runs Python 2.6? Or 2.7 I believe? > > Would you recommend that I attempt to use kcrisman's answer, or try to > install Django in Sage's Python, OR should I use sage notebook? > Install Django into Sage's Python... at let us know if it works -- I've never heard of anybody doing it (or even trying): sage -sh easy_install django # or something like that... > > > On Wednesday, July 9, 2014 11:18:35 AM UTC-4, Nils Bruin wrote: >> >> On Tuesday, July 8, 2014 11:53:33 AM UTC-7, Jole Bradbury wrote: >>> >>> I have a Django project with >>> views.py: >>> >>> #!/usr/bin/env sage -python >>> >>> from django.shortcuts import render >>> from django.http import HttpResponse >>> import sys >>> from django.http import HttpRequest >>> from django.template import RequestContext, loaders >>> sys.path.append('/Users/Jole/Desktop/django_proj/mysite/sage/src/bin') >>> sys.path.append('/Users/Jole/Desktop/django_proj/mysite/sage/') >>> from sage.all import * >>> >> >> Unfortunately, when I fire up my Django server on localhost, I get: No >> module named sage.all >> >> As an error message. As you can see I have already tried appending to the >> path. My Python Path includes sage and I can see this on my Django page, >> however my "PATH" is >> PATH >> >> '/Library/Frameworks/Python.framework/Versions/3.4/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin' >> >> >> >> That's not the path that `sage -python` would set up, so my guess is that >> `views.py` doesn't actually get *executed* (and hence run in a way >> equivalent to `sage -python views.py`), but instead gets loaded/interpreted >> by whatever python is running django. You should probably try and execute >> >> sage -python -c 'import django.shortcuts' >> >> my guess is that that would fail, proving that you didn't install django >> in sage's python and hence prove that your script isn't being executed by >> sage's python, since that line seems to execute properly in your situation. >> >> If you want to use both django and sage in the same python, you have to >> ensure that both are available to the same python. The easier way to >> accomplish that is probably to install django in sage's python, since sage >> has its own python for a reason. I have no experience with django, nor a >> clear idea what it does, so I have no idea whether it's a good/feasible >> plan to mix the two. If django is a web-server, then you should probably >> tread very carefully. Math software and web services mix badly, because >> math software is usually written with no concern for security (it's written >> for a situation where one trusts the user), but for web software security >> is vital. >> >> Things like sagecell and MathCloud put a *lot* of work in mitigating the >> security holes that are virtually unavoidable in making large parts of math >> software available via web services. >> > -- > You received this message because you are subscribed to the Google Groups > "sage-support" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sage-support+unsubscr...@googlegroups.com. > To post to this group, send email to sage-support@googlegroups.com. > Visit this group at http://groups.google.com/group/sage-support. > For more options, visit https://groups.google.com/d/optout. > -- William Stein Professor of Mathematics University of Washington http://wstein.org -- You received this message because you are subscribed to the Google Groups "sage-support" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-support+unsubscr...@googlegroups.com. To post to this group, send email to sage-support@googlegroups.com. Visit this group at http://groups.google.com/group/sage-support. For more options, visit https://groups.google.com/d/optout.