使用Django-auth应用程序(Django版本1.3),我想让我的登录页面转到https://mysite.com/login/.目前,我正在使用:
# urls.py
from django.contrib.auth.views import login
urlpatterns = patterns('', url(r'^login/$', login, name='login-view'),)
# navbar.html
<li id="nav-login"><a href="{% url login-view %}" ><b>Login</b></a></li>
Run Code Online (Sandbox Code Playgroud)
这很好用,但去了http://mysite.com/login/.
有什么方法可以告诉Django-auth在反转视图名称时使用什么前缀(https)?我已经阅读了整个手册页,但没有找到任何涵盖它的内容.或者也许某种方式告诉url标签转到https?
或者是手动指定整个URL的唯一选项?我希望不是:)鉴于Django到目前为止有多强大,我无法相信它不具备这种能力 - 我必须忽视它.:)
给定一个文本文件,我要匹配的字符由单引号分隔,但可能有零个或一个转义单引号,以及零个或多个制表符和换行符(未转义) - 我想匹配只有文字.例:
menu_item = 'casserole';
menu_item = 'meat
loaf';
menu_item = 'Tony\'s magic pizza';
menu_item = 'hamburger';
menu_item = 'Dave\'s famous pizza';
menu_item = 'Dave\'s lesser-known
gyro';
Run Code Online (Sandbox Code Playgroud)
我想只抓取文本(和空格),忽略标签/换行符 - 我实际上并不关心转义的报价是否出现在结果中,只要它不影响匹配:
casserole
meat loaf
Tonys magic pizza
hamburger
Daves famous pizza
Dave\'s lesser-known gyro # quote is okay if necessary.
Run Code Online (Sandbox Code Playgroud)
我已设法创建一个几乎完成它的正则表达式- 它处理转义的引号,但不处理换行符:
menuPat = r"menu_item = \'(.*)(\\\')?(\t|\n)*(.*)\'"
for line in inFP.readlines():
m = re.search(menuPat, line)
if m is not None:
print m.group()
Run Code Online (Sandbox Code Playgroud)
肯定有大量的正则表达式问题 - 但大多数都使用Perl,如果有一个可以做我想要的,我无法弄明白:)因为我使用的是Python,我不在乎如果它分布在多个组中,则很容易重新组合它们.
一些答案已经说过要使用代码来解析文本.虽然我确信我能做到这一点 …
# settings.py
EMAIL_BACKEND = 'django.core.mail.backends.filebased.EmailBackend'
# view.py
from django.core.mail import send_mail
def send_letter(request):
the_text = 'this is a test of a really long line that has more words that could possibly fit in a single column of text.'
send_mail('some_subject', the_text, 'me@test.com', ['me@test.com'])
Run Code Online (Sandbox Code Playgroud)
上面的Django视图代码导致包含折线的文本文件:
this is a test of a really long line that has more words that could possibl=
y fit in a single column of text.
-------------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)
任何人都知道如何更改它,以便输出文件没有换行符?Django中有一些设置可以控制它吗?Django 1.2版.
更新 - 备份一个级别并解释我原来的问题:)我正在使用django-registration app,它发送一个带有帐户激活链接的电子邮件 .此链接是一个长URL,末尾有一个随机标记(30个以上的字符),因此,该行在标记的中间断开.
如果这个问题是使用Django的基于文件的 …
我正在尝试在CentOS服务器上编译mod_wsgi(版本3.3),Python 2.6,但是virtualenv没有成功.我收到错误:
/ usr/bin/ld:/home/python26/lib/libpython2.6.a(node.o):在创建共享对象时,不能使用针对"本地符号"的重定位R_X86_64_32; 用-fPIC重新编译
/home/python26/lib/libpython2.6.a:无法读取符号:值不正确
根据mod_wsgi安装问题文档,它可能是libpython2.6.a文件:
好吧,文件在正确的位置,并且可读.我尝试使用该--enable-shared选项重新编译Python 2.6 ,但整个编译爆炸,大约每个文件都给出相同的错误,libpython2.6.a被清除.
我不知道 Python正在编译64位,但是当我运行它时,它做了:
import platform
print platform.platform()
>>>Linux-2.6.18-028stab070.4-x86_64-with-redhat-5.6-Final
Run Code Online (Sandbox Code Playgroud)
由于Python认为它是在x86_64上,我希望它编译为64位 - 如果有人有任何方式确认,我会很感激.
我尝试使用和不使用--python =/home/[...]/python2.6配置mod_wsgi Makefile,两种方式都爆炸了.
我也试过编译mod_wsgi的以外的virtualenv,使用Python 2.4,它工作得很好.不幸的是,如果我要使用它,这对我没有帮助virtualenv:)
任何人都知道如何让mod_wsgi在下编译virtualenv?
哪些资源(书籍或网站/教程)可用,包括使用纯 ActionScript 3代码进行游戏开发?纯粹,我的意思是不使用Flash CS4及其时间轴,也不使用Flex MXML组件.一切只使用Actionscript代码完成.
在另一个问题,我问了一下使用Flex SDK的特定对象进行简单的游戏,大家一致认为我不应该使用它在所有的,但只的ActionScript游戏.听起来很合理,但我在游戏主题上找到的书籍/网站教程都在Flash CS4的上下文中使用AS3.他们假设您的对象将是动画片段,时间轴等.
我意识到你可以用其他语言的书籍学习游戏编程,和/或忽略AS3书籍的Flash方面.我想我正在寻找的是AS3特有的任何信息,例如AS3专用游戏的最佳实践,如何做出架构/设计决策等等.如果它存在,无论如何:)
如何在不更改任何导入模块中的代码的情况下模拟两个深度导入的Python类?假设我正在导入一个Web实用程序库,它导入一个HTTPClient() - 如何编写单元测试,模拟HTTPClient返回值,而不更改文件web_utils.py?我想在DataHandler中使用数据操作(而不是模拟它),但我不希望HTTPClient实际连接到Web.
这甚至可能吗?鉴于Python有猴子修补,它看起来应该是.或者有替代/更好的方法吗?我还在搞清楚嘲弄过程,更不用说改变进口了.
# someLib/web_utils.py
from abc.client import SomeHTTPClient # the class to replace
def get_client():
tc = SomeHTTPClient(endpoint='url') # fails when I replace the class
return tc
class DataHandler(object):
def post_data(someURL, someData):
newData = massage(someData)
client = get_client()
some_response = client.request(someURL, 'POST', newData)
return some_response
# code/myCode.py
from someLib.web_utils import DataHandler
dh = DataHandler()
reply = dh.post_data(url, data)
# tests/myTests.py
from django.test.testcases import TestCase
from mock import Mock
class Mocking_Test(TestCase):
def test_mock(self):
from someLib import web_utils …Run Code Online (Sandbox Code Playgroud) 示例:StackOver问题页面的底部是一组页码(1,2,3 ...),包含在一组prev和next按钮中.反复点击下一步将带我到第5页,我将在此时:
显然,如果我点击浏览器上的Back按钮,则Forward将有一个值,指向第5页的URL - 但不是.
有没有办法,从HTML(加上Javascript),设置浏览器的前进按钮的值?或者这是HTML禁止做的事情之一?
我正在创建一个带有一组Radio按钮的Django表单(作为单个RadioSelect字段),我想让一些按钮变灰.但是,鉴于RadioSelect字段是表单上的单个字段,我还没有找到方法.
class OrderStatusForm(forms.Form):
os = Order_Status.objects.values_list('id', 'status')
status = forms.ChoiceField(choices=os, widget=forms.RadioSelect())
def makeForm():
newForm = OrderStatusForm()
# next line disables all radio buttons.
newForm.fields['status'].widget.attrs['disabled'] = True
Run Code Online (Sandbox Code Playgroud)
有没有办法有选择地禁用单个单选按钮?或者我只是不必首先将禁用的选项放在列表中?
我正在尝试配置Django以在使用runserver时提供静态文件(生产工作正常).一切都适用于apps目录下的所有静态文件.问题出在静态文件不在特定应用程序下,但在最终的静态目录中.例如,我有这个项目结构:
/myproject/
/myproject/static/
/myproject/static/css/foo.css
/myproject/app1
/myproject/app1/static/css/bar.css
urls.py
if settings.SERVE_STATIC:
urlpatterns += patterns('',
url(r'^static/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.STATIC_ROOT}),
)
urlpatterns += staticfiles_urlpatterns() # one of these may be redundant.
settings.py
SERVE_STATIC = True
PROJECT_ROOT = '/myproject'
STATIC_ROOT = os.path.join(PROJECT_ROOT, 'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = (os.path.join(PROJECT_ROOT, 'static'),)
INSTALLED_APPS = ('app1',)
Run Code Online (Sandbox Code Playgroud)
使用这些设置,我收到错误:
NotperlyConfigured:STATICFILES_DIRS设置不应包含STATIC_ROOT设置
这是有道理的.我告诉Django收集静态文件,并将它们放在同一个地方 - 这可能会导致循环.
如果我注释掉STATICFILES_DIRS变量,django会找到静态文件'bar.css'.但它并没有找到"foo.css".
如果我注释掉STATIC_ROOT变量并放回STATICFILES_DIRS,那么它会找到文件'foo.css' - 当然,'collectstatic'命令将不再起作用.
注意 - 我意识到'/ static'目录应该是空的,但是我所在的项目,无论如何都有文件.:)只要它们没有被'collectstatic'覆盖,看起来像Django runserver应该为它们服务 - 但事实并非如此.
在运行Django runserver时,如何在STATIC_ROOT(例如foo.css)下提供静态文件?
django ×4
python ×4
actionscript ×1
html ×1
https ×1
mocking ×1
mod-wsgi ×1
regex ×1
unit-testing ×1
virtualenv ×1