code: function put(action, namespace) {
        const { type } = action;
        invariant(type, "dispatch: action should be a plain Object with type");
        warning(
          type.indexOf(`${model.namespace}${SEP}`) !== 0,
          `sagas.put: ${type} should not be prefixed with namespace ${
            model.namespace
          }`
        );
        const newType = namespace
          ? this.prefix()
            ? `${this.prefix()}${SEP}${namespace}${SEP}${type}`
            : `${namespace}${SEP}${type}`
          : this.prefixType(type, model);
  
        return sagaEffects.put({
          ...action,
          type: newType
        });
      }
docs: 对 saga 的 put 进行封装，
  默认分发的 action 会补充当前 namespace（包括 prefix）,且必须是当前 model 存在能够被捕获的 saga 或 reducer
  否则需要提供 namespace
  
  @param {any} action
  @param {any} namespace 其他 namespace
  @returns