小编use*_*771的帖子

django提交两个不同的表单,一个提交按钮

是否可以提交两种不同的表格,在django中有一个提交按钮?我有一个称为"乐器"的表格和4个相同的表格"配置".现在我想提交一个配置和仪器.例如,仪器+配置1,仪器+配置2.每个配置都有自己的提交按钮.

我在配置表单中尝试了一个按钮:

<input onclick="submitForms()" class="btn btn-primary cfg" type="submit" value="Start" >
Run Code Online (Sandbox Code Playgroud)

并调用js函数'onclick':

submitForms = function(){
    console.log('ok'); //only for testing
    document.forms["firstForm"].submit();
    document.forms["secondForm"].submit();
}
Run Code Online (Sandbox Code Playgroud)

这是我在views.py中的方法:

if request.method == 'POST':
        form1 = dataproviderInstrumentForm(request.POST)
        form2 = dynamicTimeseriesForm(request.POST)
        print(request.POST)
        if form1.is_valid() or form2.is_valid(): 
            # do some stuff

else:
    form1 = dataproviderInstrumentForm() # an unbound form
    form2 = dynamicTimeseriesForm() # an unbound form
Run Code Online (Sandbox Code Playgroud)

python forms django

26
推荐指数
1
解决办法
2万
查看次数

在Django视图方法中调用芹菜任务?

我有两个Pythonapplications'前端'和'fv'.在我的fv应用程序中是我的tasks.py文件,在我的前端应用程序中是我的views.py文件来呈现我的视图.

现在我有一个视图,我可以选择一些参数来获取请求.POST.现在我想调用一个任务方法FunctionRDynamic并从我的视图表单中传递参数.

views.py中的方法:

if request.method == 'POST':
        form1 = dataproviderInstrumentForm(request.POST)
        form2 = dynamicTimeseriesForm(request.POST)

        if form1.is_valid() or form2.is_valid(): 
            filters = form2.cleaned_data['filter']
            estimator = form2.cleaned_data['estimator']
            windowSize = form2.cleaned_data['windowSize']

            FunctionRDynamic.delay(estimator, windowSize, timeseries)
Run Code Online (Sandbox Code Playgroud)

FunctionRDynamic是我在oder应用程序的tasks.py文件中的方法,但是此方法不会执行.

对于我的任务,我使用芹菜.所有都是用Python编写的,我使用Django作为mvc框架.

有没有人有建议?

python django celery

2
推荐指数
1
解决办法
7197
查看次数

django和芹菜击败调度程序没有数据库条目

我的问题是节拍调度程序不会在表'tasks'和'workers'中存储条目.我用django和芹菜.在我的数据库(MySQL)中,我添加了一个周期性的"估计区域",间隔为120秒.

这就是我开始工作的方式:

`python manage.py celery worker -n worker.node1 -B --loglevel=info &`
Run Code Online (Sandbox Code Playgroud)

在我启动工作人员之后,我可以在终端中看到工作人员正在工作,并且调度程序从数据库中挑选出定期任务并对其进行操作.

我的任务是如何定义的:

@celery.task(name='fv.tasks.estimateRegion',
             ignore_result=True,
             max_retries=3)
def estimateRegion(region):
Run Code Online (Sandbox Code Playgroud)

终端显示:

WARNING ModelEntry: Estimate Region fv.tasks.estimateRegion(*['ASIA'], **{}) {<freq: 2.00 minutes>}
[2013-05-23 10:48:19,166: WARNING/MainProcess] <ModelEntry: Estimate Region fv.tasks.estimateRegion(*['ASIA'], **{}) {<freq: 2.00 minutes>}>
INFO Calculating estimators for exchange:Bombay Stock Exchange
Run Code Online (Sandbox Code Playgroud)

任务"估计区域"返回一个results.csv文件,所以我可以看到工作者和节拍调度程序工作.但之后我的django管理面板中的"任务"或"工作人员"中没有数据库条目.

这是我在settings.py中的芹菜设置

`CELERY_DISABLE_RATE_LIMITS =真CELERY_TASK_SERIALIZER ='pickle'CELERY_RESULT_SERIALIZER ='pickle'CELERY_IMPORTS =('fv.tasks')CELERY_RESULT_PERSISTENT = True

# amqp settings
BROKER_URL = 'amqp://fv:password@localhost'
#BROKER_URL = 'amqp://fv:password@192.168.99.31'
CELERY_RESULT_BACKEND = 'amqp'
CELERY_TASK_RESULT_EXPIRES = 18000
CELERY_ROUTES = (fv.routers.TaskRouter(), )
_estimatorExchange = Exchange('estimator')
CELERY_QUEUES = ( …
Run Code Online (Sandbox Code Playgroud)

mysql django celery celerybeat

1
推荐指数
1
解决办法
909
查看次数

标签 统计

django ×3

celery ×2

python ×2

celerybeat ×1

forms ×1

mysql ×1