データベースからデータを読み取るオブジェクトを作成しました。 私のデータベーステーブルのフォーマットは次のとおりです。オブジェクトの配列にAngularJSのng-optionを使用する
id module_id category status categoryImage description
35 1 Machines Active machine.jpg test
現在唯一の行があると、データベースからそれらのデータの行を取得するオブジェクトの私の配列(machineCategories)は、現在、1つのオブジェクトのみを有しています。
私のHTMLには、<select> </select>
がそのマシンにバインドされています。 しかし、選択すると何も表示されません。私のHTMLコードが
//To check selected type machine
$scope.selctedType = function (type) {
$scope.typeId = type.id;
$scope.typeCategory = type.category;
}
machineCategoriesあるジャバスクリプトファイルに
<select class="select form-control capitalize"
ng-model="machineCat.id"
ng-change="selctedType(machineCat.id)"
ng-options="machineCat as machineCat.category for machineCat in machineCategories">
<option value="" selected disabled>Choose Type </option>
</select>
selctedTypeは、データの一つの行を有しています。しかし、htmlでの選択は一定の長さの空白で、長さは図のようにオブジェクトの要素数と同じです。
何故その理由が考えられますか?配列内の単一のオブジェクトのためですか?配列内に1つのオブジェクトしか存在できないか、複数のオブジェクトが存在する可能性があります。
EDIT
コントローラー・コード
var loadMachines = function() {
var loadMachinesRequest = MachineResource.loadMachineCategoryList();
loadMachinesRequest.success(function (loadMachinesRes) {
$scope.machineCategories = loadMachinesRes.result;
loadMachineSubType();
});
loadMachinesRequest.error(function (loadMachinesRes) {
$scope.result = loadMachinesRes.result;
});
}
loadMachines();
EDIT1:これは私がデータベースからデータを取得する方法です。
ここpublic function machineModule_get()//edited
{
//api to get category like machine/resort id 3 belong to main module (machine_andresorts)
$machinesModule = [];
$modules = $this->master_model->getRecords('module_category', array('module_id' => 1));
foreach ($modules as $modulesRow) {
if(strpos($modulesRow['category'], "Machines")!==false){
$machinesModule = $modulesRow;
}
}
if (!empty($machinesModule)) {
$responseArray = array(
'result' => $machinesModule,
'success' => true);
return $this->set_response($responseArray, REST_Controller::HTTP_OK);
} else {
$responseArray = array(
'result' => 'no data found in Module Category',
'success' => false
);
return $this->set_response($responseArray, REST_Controller::HTTP_PARTIAL_CONTENT);
}
}
は、あなたのコントローラのコードを投稿してください。 –
編集で追加しました。私はコントローラのコードをチェックした。オブジェクトのデータベースからデータを受け取りました。 – batuman
@AayushiJainコントローラコードとデータベースからデータを取得するコードを追加しました。 – batuman