小编Kbi*_*biR的帖子

正则表达式只匹配10或12位数

我试着写一个正则表达式来匹配10或12位数的组合.喜欢:

1234567890 - 真
123456789012 - 真
12345678901 - 假
123456-假

1234567890123-错误

仅匹配10或12位数.我试过这个:

"^[0-9]{10}|[0-9]{12}$"
Run Code Online (Sandbox Code Playgroud)

regex python-2.7

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

在报告定义Odoo 10中更改pdf文件名

根据此报告定义,如何更改PDF中使用的文件名,以便使用"SO-001.pdf"等名称.

<report
        id = "report_custom_sale_order"
        string = "Quotation / Order"
        model = "sale.order"
        report_type = "qweb-pdf"
        file = "custom_saleorder.report_saleorder"
        name = "custom_saleorder.report_saleorder"
        paperformat = "custom_saleorder.paperformat_a4"
/>
Run Code Online (Sandbox Code Playgroud)

Odoo 10.

谢谢

openerp odoo-10

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

[odoo10]如果在发出odoo警告的同时保存记录?

在我的自定义模块中,我添加了

application_no = fields.Char(string="Application Number")
Run Code Online (Sandbox Code Playgroud)
_sql_constraints = [
 ('application_no_unique',
 'UNIQUE(application_no)',
 "Application Number already exist.Please specify another number or make sure the application number is correct"),
Run Code Online (Sandbox Code Playgroud)

]

我使用sql约束来显示警告.

它工作正常,当我们输入重复的应用程序编号时,它会显示警告并阻止保存记录的访问权限


警告发生时如何保存记录?

注意


我认为SQL约束不适合这个.是这个功能的任何其他方法?

odoo odoo-10

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

如何构建一个使用多个属性的基于内容的推荐系统?

我想在Python中构建一个基于内容的推荐系统,它使用多个属性来决定两个项是否相似.在我的例子中,"items"是由C#包管理器(示例)托管的包,它们具有各种属性,例如名称,描述,标签,可以帮助识别类似的包.

这里有一个原型推荐系统,目前只使用一个属性,描述来决定包是否相似.它计算了描述的TF-IDF排名,并根据以下内容打印出前10项建议:

# Code mostly stolen from http://blog.untrod.com/2016/06/simple-similar-products-recommendation-engine-in-python.html
Run Code Online (Sandbox Code Playgroud)
def train(dataframe):
    tfidf = TfidfVectorizer(analyzer='word',
                            ngram_range=(1, 3),
                            min_df=0,
                            stop_words='english')
    tfidf_matrix = tfidf.fit_transform(dataframe['description'])
    cosine_similarities = linear_kernel(tfidf_matrix, tfidf_matrix)
    for idx, row in dataframe.iterrows():
        similar_indices = cosine_similarities[idx].argsort()[:-10:-1]
        similar_items = [(dataframe['id'][i], cosine_similarities[idx][i])
                        for i in similar_indices]

        id = row['id']
        similar_items = [it for it in similar_items if it[0] != id]
        # This 'sum' is turns a list of tuples into a single tuple:
        # [(1,2), (3,4)] -> (1,2,3,4)
        flattened = sum(similar_items, ()) …
Run Code Online (Sandbox Code Playgroud)

python machine-learning pandas scikit-learn recommender-systems

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

计算选择字段不起作用

我正在尝试创建一个选择字段,其中的值应该动态计算。声明是:

payment_mode = fields.Selection('_compute_selection', string="Payment mode", default="cash")
Run Code Online (Sandbox Code Playgroud)

和功能:

@api.model
def _compute_selection(self):
    context = dict(self._context or {})
    active_ids = context.get('active_ids')
    active_model = context.get('active_model')
    invoices = self.env[active_model].browse(active_ids)
    type_payment = MAP_INVOICE_TYPE_PARTNER_TYPE[invoices[0].type]
    if type_payment == "expense":
        if active_model == "account.invoice":
            payment_mode = [('cash', 'Cash'),
                ('idoklad', 'Internal'),
                ('transfer', 'Bank transfer')]
        else:
            payment_mode =  [('cash', 'Cash'),
                ('transfer', 'Bank transfer')]
    else:
        if active_model == "account.invoice":
            payment_mode = [('cash', 'Cash'),
                ('idoklad', 'Internal')]
        else:
            payment_mode = [('cash', 'Cash')]

    return payment_mode
Run Code Online (Sandbox Code Playgroud)

所见声明:

<field name="payment_mode" widget="radio" />
Run Code Online (Sandbox Code Playgroud)

但是,在模块升级时我收到此错误:

 File "/home/openuser/erp10/odoo/models.py", line …
Run Code Online (Sandbox Code Playgroud)

odoo odoo-10

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

在odoo 9中使用name_get

如何连接Many2one字段,打开下拉列表所有车都可见.我需要[id]和[name].

例如:

[01]奥迪,

[02]宝马

car_id = fields.Many2one('my.cars', 'Cars')


@api.multi
    def name_get(self):

???
Run Code Online (Sandbox Code Playgroud)

odoo odoo-9 odoo-10

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

如何测试方法抛出异常junit5

我有一个DocumentTypeDetector带有detectForRequest()方法的类。我正在做相应的测试,但是我无法验证是否抛出了定制的异常,我正在使用JUNIT 5。

我在这里进行了评论,但是答案并没有帮助我,这是我在以下示例中编写的代码:

@Test
public void tryThrowExceptionForInvalidRequest() throws Exception{

    InvalidInputRequestType exceptionThrown = Assertions.assertThrows(
            InvalidInputRequestType.class,
            () -> { 
                throw new InvalidInputRequestType("La petición debe estar en un formato valido JSON o XML"); 
            }
    );
    assertEquals("La petición debe estar en un formato valido JSON o XML", exceptionThrown.getMessage());
}
Run Code Online (Sandbox Code Playgroud)

但这并不能告诉我有关测试的任何信息

我需要验证我的方法是否返回了相应的异常,如下所示:

@Test
public void tryThrowExceptionForInvalidRequest() throws Exception{
    String invalid = "Este es un request invalido";
    assertIsThrown(InvalidInputRequestType.class, detector.detectForRequest(invalid));
}
Run Code Online (Sandbox Code Playgroud)

我该如何测试?

java unit-testing junit5

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