小编Mad*_*ing的帖子

TypeError:'ImmutableMultiDict'对象是不可变的python

嗨,我正在尝试添加新的键值对,但是收到TypeError错误 :'ImmutableMultiDict'对象是不可变的,我尝试添加新键的变量来自request.form,但我无法添加一个新的键值。关于如何实现这一点的任何想法?

这是我的控制器上的代码

@benefits_api.route("/templates", methods=["POST"])
def store():

    parameters = request.form
    response = BenefitTemplateService.create(parameters)

    return jsonify(response), response['code']
Run Code Online (Sandbox Code Playgroud)

我的服务就是这样

class BenefitTemplateService(object):

    @staticmethod
    def create(params):
        # some validation here

        params['credit_behavior'] = "none"
        return params
Run Code Online (Sandbox Code Playgroud)

但是我在credit_behavior的分配上遇到错误是错误消息

在此处输入图片说明

python flask

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

Python 装饰器 staticmethod 对象不可调用

您好,我正在尝试创建一个装饰器,但出现静态方法对象不可调用的错误,下面是我的代码

from db.persistence import S3Mediator
from sqlalchemy.ext.declarative import declarative_base
import logging
from functools import wraps

Base = declarative_base()

def s3(func):
    @wraps(func)
    def wrapper(*args, **kwargs):
        try:
            s3client = S3Mediator.get_s3_connection()
            kwargs["s3client"] = s3client
            retval = func(*args, **kwargs) #### an error is raised here
        except Exception as e:
            raise e
        return retval
    return wrapper
Run Code Online (Sandbox Code Playgroud)

这是实例化 s3 对象的中介者

import boto3
import logging

class S3Mediator(object):
    s3_client = None

    def __init__(self, host, access_key, secret):
        self.client = boto3.client(
            's3',
            aws_access_key_id= access_key,
            aws_secret_access_key= secret
        )

        S3Mediator.s3_client …
Run Code Online (Sandbox Code Playgroud)

python flask python-decorators

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

初始化循环Golang

您好,我正在尝试使我的功能单元可测试。其中一项建议是将函数分配给一个变量并使其全局可访问。我刚刚这样做了,但现在我遇到了初始化循环,下面是我的代码

////////////////////////
// main.go
////////////////////////

func DownloadFile(filename string) {
    // Initialized request variable here
    // ... doing initialization
    // End of initialization

    res = ProcessDownload(request)

    if res == 401 {
       return doRetry(filename)
    }

    // some code here
    return downloadFile(filename)
}

func DoRetry(filename string) {
    // Doing some database insert/updating
   return downloadFile(string)
}
Run Code Online (Sandbox Code Playgroud)

在我的另一个文件中,我将此函数分配给变量

//////////////////////
// global.go
//////////////////////

var downloadFile = DownloadFile
var doRetry = DoRetry
Run Code Online (Sandbox Code Playgroud)

我在 global.go 中这样做的原因是为了使DoRetryDownloadFile单元可测试。这意味着使用这种方法我可以模拟该函数而无需创建接口。因为这只是一个独立的函数,不需要位于某个类中。变量的所有其余部分都可以,但是当涉及执行递归行为的函数时,我收到以下错误

./global.go:22:5: initialization loop:
/go/src/project/global.go:22:5 downloadFile refers …
Run Code Online (Sandbox Code Playgroud)

unit-testing mocking go testify

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

Reactjs 模块 CSS 多类选择器

当我单击一个按钮时,我试图在 out 容器中实现或添加多个类。但似乎没有应用样式。下面是我的代码

布局.module.css

.Content {
    padding-left: 240px;
    min-height: calc(100vh);
    top: 0;
    display: block;
    position: relative;
    padding-top: 80px;
    background: #eee;
    padding-bottom: 60px;
    transition: padding-left 0.2s linear;
}

.Content.collapse {
    padding-left: 100px;
    display: block;
    transition: padding-left 0.2s linear ;
}
Run Code Online (Sandbox Code Playgroud)

现在我像这样在我的导航组件中添加了折叠类

const layout = (props) => (
    <Aux>        
        <Sidebar collapse={props.collapse} />        
        <div className={`${classes.Content} ${props.collapse ? 'collapse' : ''}`}>
            <TopNavigation toggle={props.toggle}/>
            {props.children}
            <Footer />
        </div>
    </Aux>  
);
Run Code Online (Sandbox Code Playgroud)

所以基本上我只是检查道具是否坍塌。如果是,那么我会collapse在课堂上添加一段文字。现在,当我单击一个按钮时,它会设置 state.collapse = true/false。它能够完成它的工作。现在它似乎没有读取我的 css 样式。下面是我的 DOM 中生成的类

在此处输入图片说明

请注意.Content检测到类样式。但正如你在这里看到的

Layout_Content__2WLOk collapse …

reactjs css-modules

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

无法通过 Testify Mock 对象错误

嗨,我正在尝试模拟 GO 中的结构。我正在使用作证来做到这一点。但我似乎无法让它工作,现在不要做我做错的事情。下面是我拥有的示例 main.go 和 main_test.go 文件

// Arithmetic ...
type Arithmetic interface {
    Add(int, int) int
    Subtract(int, int) int
}

// MathOperation ...
type MathOperation struct {}

// GetNewArithmetic ...
func GetNewArithmetic(obj Arithmetic) Arithmetic {
    if obj != nil {
        return obj
    }

    return MathOperation{}
}

// Add ...
func (a MathOperation) Add(num1 int, num2 int) int {
    return num1 + num2
}

// Subtract ...
func (a MathOperation) Subtract(num1 int, num2 int) int {
    return num1 - num2 …
Run Code Online (Sandbox Code Playgroud)

go testify

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

Update query not taking effect

I'm trying to manually update the table umbracoNode in MSSql now when I try to query the node that I want to update using the below command

  SELECT
      *
  FROM
      umbracoNode
  WHERE
      nodeObjectType = '366E63B9-880F-4E13-A61C-98069B029728';
Run Code Online (Sandbox Code Playgroud)

I get 30 results. Now when I try to update it using this command

Update umbracoNode 
set nodeObjectType = '366E63B9-880F-4E13-A61C-98069B02972899' 
where nodeObjectType='366E63B9-880F-4E13-A61C-98069B029728'
and id < '11335'
Run Code Online (Sandbox Code Playgroud)

Now it says 25 rows affected which is what I expected. Now when I try to query again using …

sql sql-server umbraco umbraco7

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

在 MacOS 中运行的 C# Windows 应用程序

我是 C# Windows 窗体新手。现在我有一个上传 txt 文件并输出到 PDF 文件的项目。现在我需要使用 C# Windows 窗体来实现此目的,但我只是好奇如果我使用 C# Windows 窗体开发此应用程序,我是否能够在 MacOS 环境上安装该应用程序并像在 Windows 上使用它一样使用它?有什么需要考虑的吗?比如我是否需要安装某个软件包才能使其在 Mac 中运行,反之亦然?

.net c# winforms c#-4.0

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