Thanks Guys,
@Chris - I didn't realize I could extend the event context - that's really
great (have a bunch of ideas I can implement with that)
@Dan - That's fair enough - if you don't feel there is a benefit then it's no
problem. I shall use Chris's suggested approach.
Robert
On 19 Dec 2011, at 14:40, Dan Wilson wrote:
> It would be simple to add in Robert, but I'm not sure what it adds over the
> current implementation (That's been in there since V1).
>
> The way I read this in my head is:
>
> event.getValue("Foo", "Bar");
>
> Gimme the value of Foo in the event, and if you don't have one, set event.Foo
> to bar and gimme Foo.
>
> DW
>
>
>
>
> On Mon, Dec 19, 2011 at 9:25 AM, Robert Rawlins <[email protected]>
> wrote:
> Hi Dan,
>
> You're quite right - it does sort of do it. I use the getValue default
> argument on a regular basis within my views - but I hadn't realised that it
> would set the value too if it didn't already exist before returning it.
>
> This will certainly do the job - it just looks a little odd from a semantic
> point of view within the controller. Calling get when what I'm really
> intending to do it set.
>
> Given that it's a simple implementation do you think there is a case for
> adding a new method to the API as I suggested? It would make code within the
> controller more meaningful if I was calling pramValue() I think.
>
> Robert
>
> On 19 Dec 2011, at 14:11, Dan Wilson wrote:
>
>> I think the event.getValue() method sort of does this.
>>
>> Take a look here:
>> http://docs.model-glue.com/wiki/ReferenceMaterials/EventApi#GetValuename:stringdefault:any
>>
>>
>>
>>
>> DW
>>
>> On Mon, Dec 19, 2011 at 7:11 AM, Rawlins <[email protected]> wrote:
>> Hello Guys,
>>
>> I'm finding myself with an increasing need to param a value into the event
>> (set it only if it does not already exist).
>>
>> One example use case for this is form validation.
>>
>> In my controller method for the form I need a validation result object,
>> which contains all the errors and other failure information.
>>
>> This object could come from two places - It could be that the user has been
>> passed back to this form page after a failed validation, with the result
>> object preserved in the event, or if one doesn't already exist and this is
>> the first time viewing the form, I'll create a new result object for them.
>>
>> This results in handler code that looks something like this:
>>
>> <!--- Param the validation result into the object too.
>> --->
>> <cfif NOT event.valueExists("ValidationResult")>
>> <cfset event.setValue("ValidationResult",
>> Beans.ValidateThis.newResult()) />
>> </cfif>
>>
>> This works just fine, but it's needlessly verbose. I'd like to propose a
>> change to the event object API that makes this much easier - here are a
>> couple of ideas:
>>
>> event.paramValue('name', 'value');
>>
>> or a modification to the current setValue() method, which adds a 3rd
>> argument that defines if the value should be overwritten, if false and a
>> previous value exists for the key then it's left intact.
>>
>> event.setValue("name", "value", false);
>>
>> Does anyone else have some ideas on this? am I looking at this situation in
>> completely the wrong way? does something already exist like this?
>>
>> Thanks.
>>
>> Robert
>>
>> --
>> Model-Glue Sites:
>> Home Page: http://www.model-glue.com
>> Documentation: http://docs.model-glue.com
>> Bug Tracker: http://bugs.model-glue.com
>> Blog: http://www.model-glue.com/blog
>>
>> You received this message because you are subscribed to the Google
>> Groups "model-glue" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/model-glue?hl=en
>>
>>
>>
>> --
>> Plutarch - "The mind is not a vessel to be filled but a fire to be kindled."
>>
>> --
>> Model-Glue Sites:
>> Home Page: http://www.model-glue.com
>> Documentation: http://docs.model-glue.com
>> Bug Tracker: http://bugs.model-glue.com
>> Blog: http://www.model-glue.com/blog
>>
>> You received this message because you are subscribed to the Google
>> Groups "model-glue" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/model-glue?hl=en
>
>
> --
> Model-Glue Sites:
> Home Page: http://www.model-glue.com
> Documentation: http://docs.model-glue.com
> Bug Tracker: http://bugs.model-glue.com
> Blog: http://www.model-glue.com/blog
>
> You received this message because you are subscribed to the Google
> Groups "model-glue" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/model-glue?hl=en
>
>
>
> --
> Plutarch - "The mind is not a vessel to be filled but a fire to be kindled."
>
> --
> Model-Glue Sites:
> Home Page: http://www.model-glue.com
> Documentation: http://docs.model-glue.com
> Bug Tracker: http://bugs.model-glue.com
> Blog: http://www.model-glue.com/blog
>
> You received this message because you are subscribed to the Google
> Groups "model-glue" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/model-glue?hl=en
--
Model-Glue Sites:
Home Page: http://www.model-glue.com
Documentation: http://docs.model-glue.com
Bug Tracker: http://bugs.model-glue.com
Blog: http://www.model-glue.com/blog
You received this message because you are subscribed to the Google
Groups "model-glue" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/model-glue?hl=en