javascript - 使用Angular从复选框中的数据库中获取数据
问题描述
我正在尝试从数据库(MariaDB)中获取数据,如果存在,则必须选中复选框。例如,我会给你我的应用程序的截图: 这里我输入一些数据并将其发送到(通过提交按钮)数据库
在数据库中,我有两个表。首先是“原因”。reasons
在“名称”列的“”表中,我保存了输入框中的数据。
**table "reasons"**
id | name
-------------
1 | reason1
4 | reason2
5 | reason3
6 | reason4
7 | reason 5
.. | ......
第二个表是“reason_to_transaction”。这里“ reason_id
”是对“ id
”表“ reasons
”的引用,即每个“原因名称”都有一个“ transaction_type
”(可以多个,例如,id=4 from“ reasons
”表有两个" transaction_type
"-卖,买。
**table "reason_to_transaction"*
reason_id | transaction_type
----------------
1 | sell
4 | sell
4 | buy
5 | sell
5 | buy
5 | pko
6 | sell
7 | sell
.. | ......
当我打开菜单“原因”(保加利亚语:“основание”)时,我得到了这个视图: 菜单原因 当我点击其中一些名称时,我得到了这个视图(编辑模式): 编辑模式
在输入框中,我得到了我单击的 activeItem.id。在此输入框下方有我想要检查的复选框。这是我的问题。我不知道如何从数据库中的这两个表中获取数据并选中需要的复选框。我有这个代码:
这是我的控制器,我在其中创建了一组复选框:
app.controller("ReasonCtrl", function($rootScope, $scope){
$scope.items = [];
$scope.editMode = false;
$scope.activeItem = false;
$scope.albums = [{
id: 1,
name: 'sell'
},
{
id: 2,
name: 'buy'
},
{
id: 3,
name: 'pko'
},
{
id:4,
name: 'rko'
}
];
使用这个函数,我得到了来自 activeItem 的数据:
$scope.editItem = function(item){
$scope.editMode = true;
$scope.activeItem = angular.copy(item);
$('.editMode1').show();
$('.addMode1').hide();
$('.myBox').hide();
};
$scope.createItem = function(item){
$scope.editItem({});
};
$scope.saveItem = function(){
console.log($scope.activeItem);
//delete $scope.activeItem.hash_method
var objectToSave = {
name: $scope.activeItem.name,
id: $scope.activeItem.id
};
if($scope.activeItem.id){
defaultAdapter.query('UPDATE reasons SET name = :name WHERE id =:id ',
{ replacements: objectToSave, type: Sequelize.QueryTypes.UPDATE }
).then(defaultAdapter.query('SELECT rt.transaction_type,rt.reasons_id FROM reason_to_transaction rt INNER JOIN ',{type: Sequelize.QueryTypes.UPDATE}))
.then(projects => {
console.log(projects);
$scope.editMode = false;
$scope.activeItem = false;
$scope.refresh();
});
} else {
defaultAdapter.query('INSERT INTO reasons SET name = :name',
{ replacements: objectToSave, type: Sequelize.QueryTypes.UPDATE }
).then(projects => {
console.log(projects);
$scope.editMode = false;
$scope.activeItem = false;
$scope.refresh();
});
}
};
我还在学习编程,我不知道如何获取这些数据并检查这些复选框......有人可以帮我吗?我正在使用 Angular(续集方法)和 MariaDB 谢谢!
解决方案
推荐阅读
- jquery - 无法使用 Rest Api 将用户添加到 SharePoint 组
- django - Django:管理列表视图中的右对齐列
- r - 删除ggplot geom_point中单个分类y轴上方和下方的空间
- qt - qml 中的 TextField 内的矩形中不能有多个 InnerShadow
- javascript - 为什么这个图像的 React 迭代不起作用?
- reactjs - React:为什么用户刷新页面后才能退出?
- express - express firebase 服务 POST/GET 请求以 404 错误响应
- android - 在移动设备上从我的前端本地向后端发出请求的问题
- amazon-sagemaker - describe_feature_group() 字典中缺少“ResolvedOutputS3Uri”键
- database - 在多步入职中保留数据的最佳方法是什么?