背景:
我第一次开始使用Django,这也是我第一次涉足网络开发.我只是陷入了整个"服务静态媒体"的问题.在花了一段时间查看所有文档和StackOverflow问题后,我想我理解它应该如何工作(即MEDIA_ROOT,MEDIA_URL,更新urls文件等).
我的问题:
好的,所以这是我不确定的部分.Django应用程序应该是"可插拔的",即我可以将应用程序从一个项目移动到另一个项目.那么,这些应用程序应该如何捆绑静态媒体?
例如,假设我有一个"foo"应用程序,它具有加载一些css /图像文件的模板.我应该把这些文件放在哪里,以便在我加入应用程序后它们会自动获得服务?
我看到的唯一解决方案是,安装应用程序必须包括将其静态媒体复制到您自己的服务器上的某个位置的额外步骤.
这是接受的方式吗?它包括一个额外的步骤,但也许这是处理web-dev的标准(我是新的,所以我真的不知道).
此外,如果是这样,有没有一种标准的方法来收集我所有的静态媒体,以便很容易知道我需要服务什么?(即,在应用程序中有一个名为"media"的文件夹或其他内容是否标准?).
谢谢,
我正在尝试设置WAMP服务器.我已经让Apache正常工作了,而且我已经安装了mod_wsgi.
问题是,我正在为我的项目使用虚拟环境(使用virtualenv).显然,mod_wsgi在查找我的Django安装时遇到了问题.
我试图了解如何让mod_wsgi与virtualenvs一起使用.文档似乎认为这是不可能的:
请注意,WSGIPythonHome指令只能在UNIX系统上使用,并且在Windows系统上不可用.这是因为在Windows系统上,Python DLL的位置似乎决定了Python查找Python库文件的位置.目前还不知道如何创建独立于Windows上的主要Python安装的独特基线环境.
从这里:mod_wsgi + virtualenv docs.
有没有人对如何使这项工作有所了解?
我使用urllib2的urlopen功能,试图从StackOverflow的API获取JSON结果.
我正在使用的代码:
>>> import urllib2
>>> conn = urllib2.urlopen("http://api.stackoverflow.com/0.8/users/")
>>> conn.readline()
Run Code Online (Sandbox Code Playgroud)
结果我得到了:
'\x1f\x8b\x08\x00\x00\x00\x00\x00\x04\x00\xed\xbd\x07`\x1cI\x96%&/m\xca{\x7fJ\...
Run Code Online (Sandbox Code Playgroud)
我对urllib相当新,但这似乎不是我应该得到的结果.我已经在其他地方尝试过了,我得到了我的期望(与使用浏览器访问地址一样:JSON对象).
urlopen在其他网站上使用(例如" http://google.com ")工作正常,并给我实际的HTML.我也试过使用urllib,它给出了相同的结果.
我很困难,甚至不知道在哪里寻找解决这个问题.有任何想法吗?
我正在尝试开始使用亚马逊的EC2.
我必须选择一个图像(AMI)开始.我已经决定使用官方的Ubuntu AMI,但我有两个根存储选项 - "即时"或"ebs".(见本页).
作为AWS的新手,我不确定我是否真的了解其中的差异.这两个选项意味着什么,每个选项的优缺点是什么?
我正在寻找一种以编程方式选择TinyMCE编辑器实例中的所有内容的方法.
我需要这个的原因是,如果有人点击它就会选择编辑器中的所有文本,我会喜欢它(顺便说一下,我正在使用TinyMCE和JEditable一起使用).
谢谢,
伊丹
我正在尝试分析一些非常简单的代码(同时使用 cProfile 和 pyinstrument)。代码是:
sum(1 for e in range(1533939))
Run Code Online (Sandbox Code Playgroud)
在没有激活分析器的情况下运行代码时,速度非常快(~85 毫秒)。然而,当试图在分析器中运行相同的代码时,突然需要将近 13 秒。
我正在这样做(在 Jupyter 笔记本中):
%%prun
sum(1 for e in range(1533939))
Run Code Online (Sandbox Code Playgroud)
我认为问题在于生成器表达式中对“next”的大量调用导致的开销,但是,在我的主机(不在容器内)上运行相同的实验在分析时没有显示速度变慢。
知道为什么分析器可能会减慢这段代码的速度吗?
作为记录,我使用 Jupyter 的容器“jupyter/scipy-notebook”作为基本容器。
谢谢!
我是html的新手,并且经常使用希伯来语.我遇到了这个问题,这让我觉得我误解了一些事情.
据我所知,该元素没有效果,但它确实允许添加样式.
但是,尝试这样做:
<span dir="rtl"> some text that should be rtl'ed </span>
Run Code Online (Sandbox Code Playgroud)
似乎对我不起作用(dir没有效果).
另一方面,使用<div dir ="rtl">可以正常工作.
那么..为什么<span>不工作?据我所知,我正在使用<span>来达到其目的:添加样式.当我使用它来添加颜色时它工作正常...为什么不呢?
感谢您的任何见解!鹅蛋
PS经过一些测试,我也发现,如果我与周围的文字<P>(在<SPAN>内),那么目录不生效.但在那种情况下,为什么我不会只使用<p dir ="rtl"> ...整个想法是我不想要任何元素,只是为了设计一些东西.
我正在使用JEditable插件进行就地编辑.
我有一个"设置"功能,可以调用.editable()所有相关的类.问题是,我新添加了我想要编辑的元素.显然,新添加的内容.editable()永远不会被调用.
换句话说,我希望得到jquery live()函数的效果,但是对于editable()函数.
我当前的解决方法对我来说似乎有点难看(redscribe_button是需要单击以编辑文本的按钮):
$(".redescribe_button").live("click", function(click_event) {
click_event.preventDefault();
$(".editable", $(this).parent().parent()).editable("/temp/", {
event: "make_editable",
indicator : 'Saving...',
tooltip : 'Click to edit...'
});
$(".editable", $(this).parent().parent()).trigger('make_editable');
});
Run Code Online (Sandbox Code Playgroud)
换句话说,每次单击编辑按钮时,我只是调用.editable.
想要更好的解决方案吗?
我开始在服务器上开发Django代码,运行在Apache/mod_wsgi之上.
我想了解一些事情:
通常使用哪些技术来调试服务器上运行的应用程序?
具体来说,我现在正尝试使用"打印"调试.但我似乎无法让print语句起作用.我正在打印到stderr,但我不确定我应该查看哪个日志文件.根据
这个,我应该使用
environ['wsgi.errors'],但如何从我的Django代码访问它?
谢谢!
编辑:顺便说一句,添加行print >> sys.stderr, 'message ...'不仅似乎不打印到任何日志文件,它导致我的应用程序的一部分根本不加载.
我开始使用Redis了,我遇到了以下问题.
我有一堆对象,让我们说Messages在我的系统中.每次新User连接时,我都会执行以下操作:
INCR一些全局变量,比方说g_message_id,并保存INCR的返回值(当前值g_message_id).
LPUSH将新消息(包括id和实际消息)放入列表中.
其他客户端使用值g_message_id来检查是否有任何新消息要获取.
问题是,一个客户端可以INCR在g_message_id,但没有时间LPUSH的消息的另一个客户端尝试之前,阅读它,假设有一个新的消息.
换句话说,我正在寻找一种方法来相当于在SQL中添加行,并使用自动递增的索引.
备注:
我不能使用列表索引,因为我经常要删除列表的一部分,使其无效.
我现实中的情况有点复杂,这是一个更简单的版本.
目前的解决方案:
我提出的最佳解决方案以及我打算做的是使用WATCH并Transactions尝试自己执行"自动增量".
但这在Redis中是一个常见的用例,我很惊讶它没有现成的答案,所以我担心我做错了什么.
python ×4
apache ×2
django ×2
javascript ×2
jeditable ×2
jquery ×2
amazon-ebs ×1
amazon-ec2 ×1
cprofile ×1
debugging ×1
docker ×1
html ×1
mod-wsgi ×1
profiling ×1
redis ×1
tinymce ×1
urllib ×1
urllib2 ×1
urlopen ×1
virtualenv ×1
wamp ×1
wampserver ×1