我正在尝试创建一个包含多个部分的调查实例的完整副本,每个部分都有几个问题,最后每个问题都有几个选项.我正在使用MySQL的标准django 1.3.1.我需要能够为不同的调查所有者创建所有这些元素的完整副本.我目前在视图中看到的是:
survey_new = survey
survey_new.title = survey.title + ' -- Copy'
survey_new.owner = str(new_owner_id)
survey_new.created = datetime.now()
survey_new.pk = None
survey_new.save()
for sec in survey.sections.all().order_by('order'):
sec_n = sec
sec_n.survey_id = survey_new.id
sec_n.pk = None
sec_n.save()
for q in sec.questions.all().order_by('order'):
q_n = q
q_n.section_id = sec_n.id
q_n.pk = None
q_n.save()
for op in q.options.all().order_by('order'):
op_n = op
op_n.question_id = q_n.id
op_n.pk = None
op_n.save()
Run Code Online (Sandbox Code Playgroud)
但是,这似乎贯穿所有循环而没有任何错误,只是创建一个调查副本.我希望这会复制该调查实例的调查,部分,问题和选项.似乎无法弄清楚我在这里做错了什么.
我们在业余时间使用当时可用的最新mvc3和Entity Framework .net库构建了一个小应用程序,并进行了部署.管理层喜欢它,他们希望将它集成到繁重的.net 3.5 Web表单应用程序中.
我需要以某种方式在两个应用程序中使用相同的身份验证会话.我使用相同的数据库和应用程序使用.net成员资格和配置文件提供程序进行身份验证.这样可以正常工作,但即使用户已经登录主应用程序,用户也必须单独登录MVC应用程序.我对任何建议持开放态度:在不同级别启用状态会话,或共享cookie等
绕过此登录要求的最佳方法是什么?是否应将mvc应用程序集成到webforms中或将其保留为独立应用程序?影响决策的主要问题是完成集成所需的时间,以及以后的应用程序维护.
我有一种情况是sqlalchemy由于高流量负载而不时地耗尽活动连接,我想运行一些测试来验证和优化每个用例的池参数.但是,我找不到一种简单的轮询活动连接计数的方法.
目前的设置是在线:
args = ...
mapping = {
'pool_size': 10,
'max_overflow': 10,
'pool_timeout': 30,
'pool_recycle': 1800
}
engine = sqlalchemy.create_engine(*args, **mapping)
Run Code Online (Sandbox Code Playgroud)
MySQL服务器上的最大连接数设置为200,大约有20个Web服务器和芹菜盒连接到它.
由于复杂的回调/链接设置,我们基础设施中的某些任务似乎将进入未分配到的队列。所以我想编写自动化测试来确保 celery 任务被发送到它被指定处理的队列。
设置示例:
from celery import Celery
celery = Celery()
@celery.task(base=MyTask, queue='mytasks.add')
def add(x, y):
a = x + y
return a
@celery.task(base=MyTask, queue='mytasks.dadd')
def double_add(a, y):
b = a + y
def caller(x, y):
add.apply_async(args=(2, 1), kwargs={''callback': double_add.subtask(args=(3)) })
Run Code Online (Sandbox Code Playgroud)
所以这里的“add”应该由queue='mytasks.add'处理,而“double_add”应该由queue='mytasks.dadd'处理
我了解 celery 基于结果的基本测试,如下所示:如何对 Celery 任务进行单元测试?
但我希望对上述场景的测试过程有任何了解。
使用jQuery Mobile与Django:在页面转换期间,基本脚本似乎正在加载,但是从一个页面到下一个页面,标题下的新页面脚本不会在浏览器中加载.
更具体:
我知道jquery mobile尝试使用ajax实现页面转换,但我希望我能将脚本保存在页眉/页脚中.我不想把脚本放在下面<div data-role="page" >
根据django 1.4新功能的帖子,django应该支持模板中的elif标签,这与以前的版本不同.我只是从1.3升级应用程序,并使用以下结果实现重构:
Django Version: 1.4.1
Exception Type: TemplateSyntaxError
Exception Value: Invalid block tag: 'elif', expected 'endif'
Run Code Online (Sandbox Code Playgroud)
如果有人有类似的问题,或者知道这一点,请告诉我如何做到这一点.我想要elif给出的清洁度.
我正在使用Django轴,并使用github自述文件中所述的完全相同的步骤。我可以通过django视图登录和注销,但是如果通过主网站,则不会捕获任何失败的登录尝试。尽管如此,从管理站点登录失败的尝试就可以了。我正在使用FailedLoginMiddleware,并且没有管理员专用。我已经仔细检查了所有设置和配置,但仍然无法找到问题的根源。请帮忙。
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'axes.middleware.FailedLoginMiddleware',
)
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'axes',
'django.contrib.admin',
)
Run Code Online (Sandbox Code Playgroud)
这是项目urls.py:
from django.conf.urls.defaults import patterns, include, url
from django.contrib.auth.views import login, logout, password_change
from qs.forms import ValidatingPasswordChangeForm
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
(r'^login/$', login, {'template_name': 'auth/login.html'}),
(r'^logout/$', logout, {'redirect_field_name': '/login',
'template_name': 'auth/logged_out.html'}),
(r'^passw_change/$', password_change,
{'post_change_redirect': '/rage',
'template_name': 'auth/password_change.html',
'password_change_form': ValidatingPasswordChangeForm}),
(r'^passw_reset/$', 'views.rage_password_reset'),
(r'^passw_reset/done/', 'views.rage_password_reset_done'),
(r'^passw_reset/(?P<uidb36>[0-9A-Za-z]+)-(?P<token>.+)/$', 'views.rage_password_reset_confirm'),
(r'^passw_reset/complete/$', 'views.rage_password_reset_complete'),
url(r'^$', 'be.views.main.index'),
url(r'^admin/', include(admin.site.urls)),
)
Run Code Online (Sandbox Code Playgroud) 我正在使用redis版本2.4.15-1的主从redis复制设置.我正在测试手动更新其中一个从设备的设置,以便在原始主设备关闭后将其升级为主设备.但是从客户端,我不断得到以下内容:
redis服务器:6381> CONFIG SET SLAVEOF"NO ONE"(错误)ERR不支持的CONFIG参数:SLAVEOF
我是否一定需要重新启动redis-server才能执行此操作?我假设基于http://redis.io/topics/admin.
django ×4
mysql ×2
asp.net-mvc ×1
c#-4.0 ×1
celery ×1
deep-copy ×1
jquery ×1
python ×1
redis ×1
session ×1
sqlalchemy ×1
templates ×1
testing ×1
transitions ×1