i trying following:
class purchasecreate(createview): template_name = "generic_create.html" model = purchase form_class = purchaseform try: latest_tag = purchase.objects.latest('tag').tag print(latest_tag) next_tag = latest_tag + 1 except: next_tag = 1 initial = {'tag': next_tag}
the "tag" field should start value + 1 of previous value has been entered. when test out in django api, works fine. however, when called view, works correctly first time, seems "stuck" returning first value, when new objects created should update value.
in fact, try/except portion never executed after first page load, print order never shows in terminal, hard browser refresh. how set view send updated result every time page loaded?
as suggested, moved logic get_initial()
method so:
def get_initial(self): super(purchasecreate, self).get_initial() try: latest_tag = purchase.objects.latest('tag').tag print(latest_tag) next_tag = latest_tag + 1 except: next_tag = 1 initial = {'tag': next_tag} return initial
Comments
Post a Comment