Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
4 Trả lời
11977 Lượt xem
Ảnh đại diện
Huỷ bỏ

provide us your code in detail in description itself

Câu trả lời hay nhất

In python to add,

   _sql_constraints = [
        ('name_uniq', 'unique (name)', 'The name must be unique !')
    ]

 

Ảnh đại diện
Huỷ bỏ
Tác giả

I have written like this it's not working class product_extension(osv.osv): _inherit = "product.product" _columns = { 'product_code_uniq':fields.char('SKU/Product Code', size=64, help="Enter Code", required=True), } _sql_constraints = [ ('product_code_uniq', 'unique(product_code_uniq)', 'Product Code must be unique!'), ]

Check the product.product form or table if already unique present in the table then remove the records. After that Restart the server and update the module.

I think field name is "product_code" so your_sql_constraints = [ ('product_code_uniq', 'unique(product_code)', 'Product Code must be unique!'), ]

Tác giả

Thank you prakash, to spent your valuable time with me. But this also not working. I have restatrt server and upgrade my module every time when i do any code changes. _inherit = "product.product" _columns = { 'product_code':fields.char('SKU/Product Code', size=64, help="Enter Code", required=True), } _sql_constraints = [ ('product_code_uniq', 'unique(product_code)', 'Product Code must be unique!'), ]

Please make sure 'product_code' column in available in product.product table?. Default openerp 'default_code' code is available. Refer the link https://www.odoo.com/forum/help-1/question/why-sql-constraints-not-working-39549

Tác giả

previcously product_code not available. I want to add product_code. After my module installation the field is available in product_product table. Please check my .py file from openerp.osv import fields, osv import os.path import fnmatch from tools.translate import _ class product_extension(osv.osv): _inherit = "product.product" _columns = { 'product_code':fields.char('SKU/Product Code', size=64, help="Enter Code", required=True), } _sql_constraints = [ ('product_code_uniq', 'unique(product_code)', 'Product Code must be unique!'), ] and .xml file product.normal.form.view.extension.formproduct.productproduct.normal.tree.view.extension.formproduct.product

using DB pg_admin you can easily check Column and Constraints are created Steps 1)Select the table you want 2) Ctrl-Alt-Enter or right-click / Properties 3) Select "Columns" tab 4) Select "Constraints" tab otherwise issues in the custom module.

Tác giả

Thank you prakash, I got the problem. I have removed all the products which have the value of "product_code" field. I have started working with new product, then this constraint working...

Câu trả lời hay nhất

Hi

Add this code in py file

    _sql_constraints = [
        ('your_field_uniq', 'unique(your_field)', 'your_field must be unique!'),
    ]

Ảnh đại diện
Huỷ bỏ
Tác giả

I have written like this it's not working class product_extension(osv.osv): _inherit = "product.product" _columns = { 'product_code_uniq':fields.char('SKU/Product Code', size=64, help="Enter Code", required=True), } _sql_constraints = [ ('product_code_uniq', 'unique(product_code_uniq)', 'Product Code must be unique!'), ]

Hi try this _inherit = "product.product" _columns = { 'product_code':fields.char('SKU/Product Code', size=64, help="Enter Code", required=True), } _sql_constraints = [ ('product_code_uniq', 'unique(product_code)', 'Product Code must be unique!'), ]

upgrade your module, if there is value in this field is duplicate in old product then it not apply

Tác giả

Thank you jagdish, to spent your valuable time with me. But this also not working. I have restatrt server and upgrade my module every time when i do any code changes.

Tác giả

Thank you jagadish, I got the problem. I have removed all the products which have the value of "product_code" field. I have started working with new product, then this constraint working...

Câu trả lời hay nhất

Where the heck is "_sql_constraints" documented? (I'd add this as a comment, but the stoopid karma system won't let me.)

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

samba - if you have such issue, when column is populated with data, you should add that sql_constraint into your code, but as well you should try to get this column having distinct values, then manually try to set a sql constraint on your database - that will work for sure. Just remember to make sure that column has no duplicate value and then create a key.

Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
2
thg 9 17
8716
1
thg 3 15
7841
2
thg 8 25
3418
1
thg 2 22
3716
2
thg 9 18
7123