code: def new():
      
      form = CommunityForm(formdata=request.values)
  
      ctx = mycommunities_ctx()
      ctx.update({
          'form': form,
          'is_new': True,
          'community': None,
      })
  
      if form.validate_on_submit():
          data = copy.deepcopy(form.data)
  
          community_id = data.pop('identifier')
          del data['logo']
  
          community = Community.create(
              community_id, current_user.get_id(), **data)
  
          file = request.files.get('logo', None)
          if file:
              if not community.save_logo(file.stream, file.filename):
                  form.logo.errors.append(_(
                      'Cannot add this file as a logo. Supported formats: '
                      'PNG, JPG and SVG. Max file size: 1.5 MB.'))
                  db.session.rollback()
                  community = None
  
          if community:
              db.session.commit()
              flash("Community was successfully created.", category='success')
              return redirect(url_for('.edit', community_id=community.id))
  
      return render_template(
          current_app.config['COMMUNITIES_NEW_TEMPLATE'],
          community_form=form,
          **ctx
      )
docs: Create a new community.