コンテンツへスキップ
メニュー
この質問にフラグが付けられました
1 返信
1430 ビュー

I have a float field called "price". I want to import the data from spreadsheet. the data is from user. assume the data is not clean and need to be handled first, how can I handle if there is foreign symbol in the data?


for example. in the first row, the price should be empty. but the user fill it with "-". then this error should appear "Column price contains incorrect values (value: -)"


before it tries to test, I want to handle it first by replacing all characters into either empty or numeric


I already tried this


    @api.model
    def create(self, vals_list):
        for val in vals_list:
            for v in val:
                if val[v] in ['-', ' ']:
                    val[v] = ''

but the error when importing still appear



アバター
破棄
最善の回答

Hi,

It is a float field so try to update it with 0.0

you can re-write the code like this


@api.model

    def create(self, vals_list):

        for val in vals_list:

            for v in val:

                if val[v] in ['-', ' ']:

                    val[v] = 0.0


or try to update the spreadsheet value as 0.0 ie replace the - value with 0.0


Hope it helps

アバター
破棄
著作者

Thanks for the reply. Your answer is indeed working and I tested it. But after several days, I found that I only need to change from @api.model to @api.model_create_multi. And it's working as well.

Both is working. I don't know which is more proper

関連投稿 返信 ビュー 活動
1
7月 25
1857
4
4月 25
7847
8
1月 25
6848
9
4月 25
3996
1
4月 25
1533