meteor / meteor/validated-method

Validator on autoform method-update

Open
#18 14 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
193
Forks
29
PR merge metrics
No merged PRs in 30d

Description

Hi, i'm using autoform to generate an update form

```
{{#with area}}
{{#autoForm
collection="Areas"
id="updateAreasForm"
type="method-update"
meteormethod="Areas.methods.update"
doc=this
class="form-horizontal"
}}
{{> afQuickField name='nome' label-class="col-sm-3" input-col-class="col-sm-9"}}
{{> afQuickField name='tipo' label-class="col-sm-3" input-col-class="col-sm-9"}}
{{#unless afFieldValueIs name='tipo' value=1}}
{{> afQuickField name='paiId' label-class="col-sm-3" input-col-class="col-sm-9"}}
{{/unless}}
{{> afQuickField name='ativo' label-class="col-sm-3" input-col-class="col-sm-9"}}
{{> submit texto="Editar"}}
{{/autoForm}}
{{/with}}
```

Here's the definition of the method:

```
Areas.methods.update = new ValidatedMethod({
name: 'Areas.methods.update',
validate: Schemas.Areas.validator(),
run(modifier, _id) {
console.log(modifier, _id);
return Areas.update({_id: _id}, modifier);
}
});
```

I'm getting this error:

```
Exception while simulating the effect of invoking 'Areas.methods.update' Error: When the validation object contains mongo operators, you must set the modifier option to true(…) Error: When the validation object contains mongo operators, you must set the modifier option to true
at doValidation1 (http://localhost:3000/packages/aldeed_simple-schema.js?3d6ebc811c555e8ab1ad73b249a995dc641334ed:2278:11)
at doValidation (http://localhost:3000/packages/aldeed_simple-schema.js?3d6ebc811c555e8ab1ad73b249a995dc641334ed:2910:10)
at SimpleSchemaValidationContext.simpleSchemaValidationContextValidate [as validate] (http://localhost:3000/packages/aldeed_simple-schema.js?3d6ebc811c555e8ab1ad73b249a995dc641334ed:2945:21)
at SimpleSchema.validate (http://localhost:3000/packages/aldeed_simple-schema.js?3d6ebc811c555e8ab1ad73b249a995dc641334ed:2132:35)
at null. (http://localhost:3000/packages/aldeed_simple-schema.js?3d6ebc811c555e8ab1ad73b249a995dc641334ed:2154:10)
at ValidatedMethod._execute (http://localhost:3000/packages/mdg_validated-method.js?a862c6e60ea48391f9f16ddbf7d1748fa9231a3b:118:64)
at ValidatedMethod.connection.methods._connection$methods.(anonymous function) (http://localhost:3000/packages/mdg_validated-method.js?a862c6e60ea48391f9f16ddbf7d1748fa9231a3b:71:21)
at http://localhost:3000/packages/ddp-client.js?250b63e6c919c5383a0511ee4efbf42bb70a650f:3911:25
at _.extend.withValue (http://localhost:3000/packages/meteor.js?9730f4ff059088b3f7f14c0672d155218a1802d4:971:17)
at _.extend.apply (http://localhost:3000/packages/ddp-client.js?250b63e6c919c5383a0511ee4efbf42bb70a650f:3902:54)
```

Do you guys have any idea about what is happening? Thanks

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the autoform `method-update` call with `Areas.methods.update` and `Schemas.Areas.validator()`, then inspect how the validation object is passed to `ValidatedMethod`. Compare the generated modifier with the validation error and verify the expected behavior using the existing issue example.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, mongodb
Domain
api, backend, databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.