简体   繁体   English

在 python 中使用不同的循环分配每个值

[英]Assign each value using different loops in python

Hi I got a loop where I get different parameters (age, date, role, etc.), and I got an array where I get these values.嗨,我有一个循环,我在其中获取不同的参数(年龄、日期、角色等),并且我在一个数组中获取这些值。 How can I assign each value to eache parameter.如何将每个值分配给每个参数。 I'll add some code below我将在下面添加一些代码

I tried this but obviosly didn't work我试过了,但显然没有用

parameters = Parametros.objects.filter(job_id=job.id)
        if request.method == 'POST':    
            for parameter in parameters:
                #Update parameters
                params = request.POST.getlist('parameter')
                for i in range(len(params)):
                    cursor.execute("UPDATE Jobs_parametros SET parameter_value='" + params[i] + "' WHERE parameter_name='" + parameter.parameter_name + "' AND job_id=" + str(job.id))

Here we can see "parameters" where I'm assigning parameter.parameter.name for the different names.在这里我们可以看到“参数”,我在其中为不同的名称分配了 parameter.parameter.name。 After that we can see the array where I get the values called "params".之后我们可以看到数组,我在其中获取名为“params”的值。 I want to assign each value I get from params to the name of the parameter to execute the code showed in the last line我想将我从 params 获得的每个值分配给参数的名称以执行最后一行中显示的代码

The result that I got with the code showed is each parameter name with the last value I added.我用显示的代码得到的结果是每个参数名称和我添加的最后一个值。 The values are updated but only take the last value in my form and didn't assigned my values like the date and age for eache parameter name值已更新,但仅采用我表单中的最后一个值,并且没有分配我的值,例如每个参数名称的日期和年龄

在此处输入图像描述

It seems nobody could resolve my question, instead answered woth useless answers so here is how i could resolve it似乎没有人能解决我的问题,而是回答了无用的答案所以这就是我如何解决它

parameters = Parametros.objects.filter(job_id=job.id)
        aux = 0
        if request.method == 'POST':    
            for parameter in parameters:
                #update parameters
                aux = aux + 1
                values = request.POST.getlist('parameter')
                for i in range(len(values)):
                    if (i + 1) == aux:
                        cursor.execute("UPDATE Jobs_parametros SET parameter_value='" + values[i] + "' WHERE parameter_name='" + parameter.parameter_name + "' AND job_id='" + str(job.id) + "'")

I used an aux to match index numbers for each array.我使用 aux 来匹配每个数组的索引号。 It was simple logic这是简单的逻辑

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM