ember-easy-form-extensions

Manages form submission in the component/controller and route layers of Ember apps

Usage no npm install needed!

<script type="module">
  import emberEasyFormExtensions from 'https://cdn.skypack.dev/ember-easy-form-extensions';
</script>

README

Ember Easy Form Extensions Build Status

This Ember addon manages form submission in the controller/component and route layers of Ember apps.

It works alongside most form component addons including but not limited to Ember EasyForm and Ember Paper.

Ember EasyForm is not longer a required dependency for this addon.

Installation

npm uninstall --save-dev ember-validations
ember install ember-easy-form-extensions

Overview and Example

Designed to handle formsubmission events, ember-easy-form-extensions reduces boilerplate code and standardizes form submission whilst providing a broad API for you to interact with.

{{!--app-name/templates/users/new.hbs--}}

<form>

  <controls>
    {{input value=firstName}}
    {{input value=lastName}}
  </controls>

  {{!--Submit and cancel buttons--}}
  {{form-submission formIsSubmitted=formIsSubmitted}}

</form>
// app-name/controllers/users/new.js

import Ember from 'ember';
import FormMixin from 'ember-easy-form-extensions/mixins/components/form';

export default Ember.Controller.extend(
  FormMixin, {

  validations: {
    'model.title': {
      presence: true
    }
  }

  /* Runs if cancel button in {{form-submission}} is clicked */

  cancel: function() {
    this.transitionTo('posts');
  },

  /* Runs after validations pass and submit button in {{form-submission}} is clicked */

  save: function() {
    this.get('content').save().then(function(post) {
      this.transitionTo('post', post);
    });
  },

});

Documentation

A walkthrough and documentation can be found in the wiki.

  1. Form templates
  2. [Validating models(https://github.com/sir-dunxalot/ember-easy-form-extensions/wiki/2.-Validating-Models)]
  3. Saving Models
  4. Deleting Models