def __init__(self, *args, **kargs): # Store the instance self.columns = kargs.pop('columns', None) self.values = kargs.pop('values', None) self.show_key = kargs.pop('show_key', False) super(EnterActionIn, self).__init__(*args, **kargs) # If no initial values have been given, replicate a list of Nones if not self.values: self.values = [None] * len(self.columns) for idx, column in enumerate(self.columns): # Skip the key columns if flag is true if not self.show_key and column.is_key: continue self.fields[field_prefix + '%s' % idx] = \ column_to_field(column, self.values[idx], label=column.description_text) if column.is_key: self.fields[field_prefix + '%s' % idx].widget.attrs['readonly'] = 'readonly' self.fields[field_prefix + '%s' % idx].disabled = True
def __init__(self, *args, **kargs): # Store the instance self.workflow = kargs.pop('workflow', None) self.initial_values = kargs.pop('initial_values', None) super(RowForm, self).__init__(*args, **kargs) if not self.workflow: return # Get the columns self.columns = self.workflow.get_columns() # If no initial values have been given, replicate a list of Nones if not self.initial_values: self.initial_values = [None] * len(self.columns) for idx, column in enumerate(self.columns): field_name = field_prefix + '%s' % idx self.fields[field_name] = \ column_to_field(column, self.initial_values[idx]) if column.is_key: if self.initial_values[idx]: self.fields[field_name].widget.attrs['readonly'] = \ 'readonly' else: self.fields[field_name].required = True elif column.data_type == 'integer': self.fields[field_name].required = True