Python 如果输入的月份大于当前月份,我想引发一个错误
它工作正常。Python 如果输入的月份大于当前月份,我想引发一个错误,python,python-2.7,Python,Python 2.7,它工作正常。 但是,如果我选择月份2月,它会显示相同的加薪错误。在我的情况下,我只想在输入的月份大于当前月份时显示加薪错误。如果小于当前月份,加薪错误不应抛出。我已经解决了它。 首先我们要获取“当前月份”,然后我们要给出“当前月份”,如: -12总是正确的,所以。。。或12总是正确的。那么我该怎么办呢。如果我选择的月份少于当前月份,则不应发出警告。我的问题有任何答案吗? def generate_leave(self, cr, uid,ids, fields, context=None):
但是,如果我选择月份2月,它会显示相同的加薪错误。在我的情况下,我只想在输入的月份大于当前月份时显示加薪错误。
如果小于当前月份,加薪错误不应抛出。我已经解决了它。 首先我们要获取“当前月份”,然后我们要给出“当前月份”,如:
-
12
总是正确的,所以。。。或12总是正确的。那么我该怎么办呢。如果我选择的月份少于当前月份,则不应发出警告。我的问题有任何答案吗?
def generate_leave(self, cr, uid,ids, fields, context=None):
if context is None:
context = {}
month_split = self.browse( cr, uid,ids)
print "\n\n\n\n\n\n DATEE",month_split.name
dt = datetime.strptime(month_split.name, "%Y-%m-%d")
year = dt.year
print "\n\n\n\n YER",year
month = dt.month
print "\n\n\n MNTH",month
hrme=self.pool.get('acm.lev')
fds = hrme.search(cr,uid,[('no_of_months' ,'=', dt.month),('no_of_year' ,'=', dt.year)])
print "\n\n\n\n\n TEST FDS",fds
if month == (dt.month + 1) % 12 or 12 :
raise osv.except_osv(_("Warning!"),_("Please choose months properly."))
if month > datetime.now().month :
raise osv.except_osv(_("Warning!"),_("Please choose months properly."))