콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다
1 회신
4505 화면

When an attribute has an option where "Is custom value" is selected, a text box will show when the customer selects that option. Is there anyway for that text box be required?

아바타
취소
베스트 답변

Hii,
Yes, you can make a text box required only when the "Is custom value" option is selected in Odoo. This is a classic case of conditional field requirement.
Model Code (Python):

from odoo import models, fields, api


class YourModel(models.Model):

    _name = 'your.model'


    attribute_value = fields.Selection([

        ('option1', 'Option 1'),

        ('custom', 'Custom Value')

    ], string="Attribute Value")


    custom_value_text = fields.Char("Custom Value Text")


    is_custom_value = fields.Boolean("Is Custom", compute="_compute_is_custom_value")


    @api.depends('attribute_value')

    def _compute_is_custom_value(self):

        for rec in self:

            rec.is_custom_value = rec.attribute_value == 'custom'


    @api.constrains('attribute_value', 'custom_value_text')

    def _check_custom_value_required(self):

        for rec in self:

            if rec.attribute_value == 'custom' and not rec.custom_value_text:

                raise ValidationError("Custom value must be provided when 'Custom' is selected.")


View Code (XML):
<field name="attribute_value"/>


<field name="custom_value_text"

       invisible =  [('attribute_value', '!=', 'custom')], 'required': [('attribute_value', '=', 'custom')] />
i hope it is use full


아바타
취소
관련 게시물 답글 화면 활동
Discount Free Gift 해결 완료
4
8월 25
1637
2
9월 25
924
1
6월 25
1862
1
6월 25
1229
2
5월 25
1613