Использование Wirebox в Coldbox, как мне создать бин из модели - PullRequest
1 голос
/ 28 декабря 2011

Я не очень хорошо разбираюсь в терминологии, поэтому, пожалуйста, простите / исправьте меня. Также я понятия не имею, как использовать Coldspring и т. Д., Поэтому я пытаюсь просто использовать wirebox.

Я хочу не использовать плагин beanFactory и просто вызывать методы wirebox прямо из моей модели.

В настоящее время я могу использовать это

<cfproperty name="bf" inject="coldbox:plugin:BeanFactory" scope="variables" />

Как мне сделать так, чтобы я мог вызывать метод getInstance Wirebox вместо getModel beanFactory?

Ответы [ 2 ]

0 голосов
/ 05 сентября 2012

Внутри обработчика вы можете использовать бины для вставки в Wirebox, используя внедрение свойств (очень похоже на то, что вы опубликовали).

На основе тегов

<cfproperty name='myModel' inject='id:MyModel' />

На основе сценариев

property name='myModel' inject='id:MyModel';

Затем вы можете использовать модель в любом месте обработчика, просто вызвав myModel.someMethod().

Стоит также отметить, что если вы вводите инъекцию, используя идентификатор модели, тогда значение inject не требуется.Wirebox попытается найти модель, используя имя, которое вы ей дали.Вы можете упростить его.

На основе тегов

<cfproperty name='myModel' inject />

На основе сценариев

property name='myModel' inject;
0 голосов
/ 03 января 2012

Я не уверен, что это ответ, который вы ищете, но ...

В обработчике вы можете сделать это.

var oMyModel = populateModel("myModel");

В модели вы можете сделать это.

var oMyModel = createobject("component", "myModel");

Это ответ на вопрос, что вам нужно?

...