Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
1 Odpovědět
2906 Zobrazení

Hi,

Imagine that there are two selection fields, country and states as follows.

So when ever I select a country the states related to the country should be loaded out of all states. Any Idea about doing this in Odoo Website Form(QWEB) in Odoov15?


Avatar
Zrušit
Nejlepší odpověď

Hi, there,

Target:

Process:

1. XML(this editor is hard to use)


res.partner









2.py

@api.onchange('state_id')
def _onchange_state_id(self):
self.city_id = None
self.district_id = None
if self.state_id:
return {'domain': {'city_id': [('state_id', '=', self.state_id.id)]}}
else:
return {'domain': {'city_id': []}}

from odoo import fields, models

class District(models.Model):
_name = 'res.country.district'
_description = 'District'
_order = 'name'

name = fields.Char("Name", required = True)
city_id = fields.Many2one(
'res.country.city', 'City'
)

class City(models.Model):
_name = 'res.country.city'
_description = 'City'
_order = 'name'

name = fields.Char("Name", required=True, translate=True)
zipcode = fields.Char("Zip")
state_id = fields.Many2one(
'res.country.state', 'State')
Hope it is useful.


Avatar
Zrušit

XML:
<record id="view_res_country_china_address_form" model="ir.ui.view">
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form"/>
<field name="arch" type="xml">
<xpath expr="//div[hasclass('o_address_format')]" position="inside">
<field options='{"no_open": True}' name="state_id" placeholder="State Select" class="o_address_city"/>
<field options='{"no_open": True}' name="city_id" placeholder="City Select" class="o_address_city"/>
<field options='{"no_open": True}' name="district_id" placeholder="District Select" class="o_address_city"/>
</xpath>
</field>
</record>

Autor

Hi @tony,
This is not what I need.
I need to do this in the webisite module.

Related Posts Odpovědi Zobrazení Aktivita
3
čvc 22
11574
5
čvn 19
7052
2
pro 24
9202
4
bře 24
5306
1
bře 24
1820