def create_valid_post_values(self): self.new_driving_dataset = DrivingDataset() self.new_driving_dataset.name = "new_driving_dataset" self.new_driving_dataset.description = "description" self.new_driving_dataset.geographic_region = "geographic_region" self.new_driving_dataset.spatial_resolution = "spatial_resolution" self.new_driving_dataset.temporal_resolution = "temporal_resolution" self.new_driving_dataset.boundary_lat_north = 30 self.new_driving_dataset.boundary_lat_south = -30 self.new_driving_dataset.boundary_lon_east = 30 self.new_driving_dataset.boundary_lon_west = -30 self.new_driving_dataset.view_order_index = 1 self.new_driving_dataset.usage_order_index = 1 self.new_driving_dataset.is_restricted_to_admins = True self.new_driving_dataset.time_start = datetime.datetime(2010, 1, 1, 10, 00) self.new_driving_dataset.time_end = datetime.datetime(2010, 2, 1, 10, 00) self.drive_var = ['drive var 1', 'drive var 2'] jules_params = DrivingDatasetJulesParams( driving_dateset=self.new_driving_dataset, data_start="2010-01-01 10:00", data_end="2010-02-01 10:00", dataperiod=1800, drive_file="jules_param_drive_file", drive_var=self.drive_var, var_names=['name1', 'name2'], var_templates=['template1', 'template2'], var_interps=['interp1', 'interp2'], nx=10, ny=20, x_dim_name='jules_param_x_dim_name', y_dim_name='jules_param_y_dim_name', time_dim_name='jules_param_time_dim_name', latlon_file='latlon_file', latlon_lat_name='latlon_lat_name', latlon_lon_name='latlon_lon_name', land_frac_file='land_frac_file', land_frac_frac_name='land_frac_frac_name', frac_file='frac_file_file_name', frac_frac_dim_name='frac_frac_dim_name', frac_type_dim_name='frac_type_dim_name', soil_props_file='soil_props_file', extra_parameters={1: self.extra_parameter}, post_processing_script_id=0 ) valid_params = jules_params.create_values_dict({}) return valid_params
values["param_names"].append("{}::{}".format(parameter.namelist.name, parameter.name)) helpers.error_flash("Some of the values entered below are incorrect, please correct them") else: if id is None: driving_dataset = DrivingDataset() driving_dataset.is_restricted_to_admins = True c.regions = [] else: driving_dataset = self._dataset_service.get_driving_dataset_by_id(id) c.regions = self._landcover_service.get_land_cover_regions(id) jules_params = DrivingDatasetJulesParams() jules_params.set_from(driving_dataset, c.regions) values = jules_params.create_values_dict(c.namelist) c.masks = int(values['mask_count']) c.mask_can_be_deleted = [] for mask_index in range(c.masks): mask_id = values['region-{}.id'.format(mask_index)] c.mask_can_be_deleted.append(mask_id is None or mask_id == "") try: c.nvar = int(values['drive_nvars']) except (ValueError, KeyError): c.nvar = 0 c.param_names = values["param_names"] html = render('driving_data/edit.html')