В настоящее время я создаю свой собственный MVC в ColdFusion 9 (cfscript), и по какой-то причине у меня возникают небольшие проблемы в базовой модели, которую я создал.Почему моя собственность не установлена в cfscript?
public function init(required itemName){
var columns = {};
var result = '';
var type = '';
var length = '';
var key = '';
var field = '';
var allowNull = '';
setModel(itemName);
this.table = this.model.tableName();
this.qdb = request.qwerkfactory.newQDB();
this.qdb.init(tableName = this.table);
this.qdb.getTableAttributes();
this.result = this.qdb.execute().getResult();
for(i = 1; i LT this.result.recordcount; i++){
result = this.result;
type = ReReplaceNoCase(result['type'][i], '[0-9()]', '', 'all');
length = ReReplaceNoCase(result['type'][i], '[a-z()]', '', 'all');
key = (len(result['key'][i])) ? result['key'][i] : false;
field = result['field'][i];
allowNull = result['null'][i];
columns["#field#"] = {};
columns["#field#"].type = "#type#";
columns["#field#"].length = "#length#";
columns["#field#"].key = "#key#";
columns["#field#"].null = "#allowNull#";
}
setTableAttributes(columns);
return this.model;
}
Это мой метод, который действует как метод конструктора для моего компонента модели. То, что он делает, это получить схему таблицы для конкретной таблицы, а затем вернуть ее модели, которая наследует этот базовый класс. Тем не менее, я определил свойство для компонента называется tableColumns, когда я установить его в методе инкубационном:
public function setTableAttributes(required struct attr){
this.tableColumns = arguments.attr;
}
Это отличает ее штраф в данный момент, когда я writeDump() this.tableColumns он возвращает правильный результат , Но при использовании getter это говорит, что tableColumns в этом не определено. Что я делаю неправильно?
Кроме того, QDB - это мой уровень абстракции базы данных для фреймворка, который является ссылкой на мои капли кода. – davidbenjamin998
Когда вы говорите, что используете геттер, вы говорите, что у вас есть функция, которая возвращает 'this.tableColumns'? –