Odoo 8에서 특정 날짜/시간 필드를 12 시간 형식으로 선택하고 선택하려고합니다. 일반적으로 다음과 같이 수행됩니다. 설정> 번역> 언어> 편집> 시간 형식,하지만 단일 일부 폼보기에서 날짜/시간 필드.Odoo 8의 특정 datetime 필드를 포맷하는 방법은 무엇입니까?
도움이 될 것입니다.
Odoo 8에서 특정 날짜/시간 필드를 12 시간 형식으로 선택하고 선택하려고합니다. 일반적으로 다음과 같이 수행됩니다. 설정> 번역> 언어> 편집> 시간 형식,하지만 단일 일부 폼보기에서 날짜/시간 필드.Odoo 8의 특정 datetime 필드를 포맷하는 방법은 무엇입니까?
도움이 될 것입니다.
난 당신이 몇 가지 옵션을 생각한다 :
솔루션 0, 쉽게. write
또는 create
orm 메서드에서 datetime 필드를 변환하십시오. 예를 들어 25/11/2017 16:41:51
이 필드에 삽입 된 경우 25/11/2017 4:41:51
으로 변환해야합니다. Odoo가 기본적으로 12 시간 형식을 사용합니다.
해결책 1, 쉬운. 이 같은 날짜 만 선택하려면 필드를 변경합니다 :
<field name="date" widget="date"/>
을 그리고 당신은 시간을 설정하는 다른 필드를 만들 수 있습니다
time = fields.Float(
string='Time'
)
당신은 형태로 시간 형식을 보여주기 위해 float_time
위젯을 사용할 수 있습니다 : 당신이 원하는 경우
<field name="time" widget="float_time" />
또한 검증 또는 write
또는 create
방법의 변환을 할 수 있습니다.
해결책 2, 어려운. 당신은 새로운 위젯을 만들거나 당신이있는 DateTimePicker의 슬라이더를 변경할 수 있습니다, 자바 스크립트 함수는 또한 유효성 검사를 오버라이드 (override) 할 필요가 /addons_path/web/static/lib/jquery.ui.timepicker/js/jquery-ui-timepicker-addon.js
$.extend(Timepicker.prototype, {
// [...]
_injectTimePicker: function() {
// [...]
this.hour_slider = $tp.find('#ui_tpicker_hour_'+ dp_id).slider({
orientation: "horizontal",
value: this.hour,
min: o.hourMin,
max: hourMax, // this is the value to change
step: o.stepHour,
slide: function(event, ui) {
tp_inst.hour_slider.slider("option", "value", ui.value);
tp_inst._onTimeChange();
}
});
파일에, 나는 그것을 찾을 수있는 쉬운 방법이 없다 생각합니다. write
및 create
mehtod에서이 유효성 검사를 수행하면 더 쉽게 사용할 수 있습니다.
QWeb보기 또는 XML보기입니까? –
이것은 XML보기입니다. 나는 qweb보기에서 그것을하는 방법을 안다. –
특정 형식으로 시간을 계산하는 종속 필드를 만들어 해결 방법을 사용할 수 있으며보기에서 해당 필드를 사용할 수 있습니다. 이렇게하면 레코드를 생성하고 업데이트하는 동안가는 값을 메모해야합니다. –