跳至内容
菜单
此问题已终结
7 回复
7362 查看

Hello

I have code for a statusbar and it is working but not as I expect:

.py code:

state = fields.Selection({('new','New'), ('open','In Progress'), ('closed','Closed')}, "Status")

.xml code:

<field name="state" widget="statusbar" statusbar_visible="new,open,closed" clickable="True"/>


problem 1:

Even though I have specified in the XML code to show new, open and closed, it shows in the order open, new, closed in Odoo. How do I fix this?

problem 2:

It is on the top left corner of the screen, how do I get it to the top right where most status bars are?

形象
丢弃
编写者

Found another issue I can't find information on. How do I get the created tickets to default to new when saved?

编写者

Ankit Thank you.. Problem 1 sorted. status bar is now on the left side. Problem 2: how do I get them in order new, inprogress, closed and Problem 3: how can I get it to default to new when create is clicked

最佳答案

hello siobhan

in .py file

'state': fields.selection([('open', 'Open'), ('post', 'Posted')], "Batch State"),

_defaults = {

'state': 'open',

in.xml file

in tree view :

<field name="state"/>

you can try this in form view: 

<field name="state" widget="statusbar" />

or you can use this

<field name="state" widget="statusbar" statusbar_visible="draft,confirm,done"/>

Thank You

形象
丢弃
编写者

Tried using _defaults. I have no error but state is not defaulting to new. Tree view and form view are already in place.

it will work if you have put that code in header

there is no issue in your code also

编写者 最佳答案

Ok.. got help with answer. I was using dictionary for my list which python will print in random order. Slight change in the code and added the default in same line so solves all my issues:



state = fields.Selection(

[('new','New'), ('open','In Progress'), ('closed','Closed')],

default='new',

string="Status",

)

形象
丢弃
相关帖文 回复 查看 活动
2
12月 22
14651
4
1月 22
7135
1
11月 21
4751
0
1月 21
2199
8
5月 20
7658