Mendix低代码开发
Mendix介绍相关网址培训课程地址Mendix官网首页Mendix平台5分钟概述价格使用低代码平台 - 危险的赌注注册安装如何安装Mendix Studio ProMendix下载地址一、Entity实体与Object实例Entities实体 抽象的容器Object实例 具体的一个真的物体一个entity包含很多的ObjectEntity:课程Name价格课时Object:语文语文10020数
Mendix介绍
相关网址
注册安装
一、Entity实体与Object实例
Entities实体 抽象的容器
Object实例 具体的一个真的物体
一个entity包含很多的Object
Entity: 课程 Name 价格 课时
Object: 语文 语文 100 20
数学 数学 110 30
英语 英语 70 10
Entity: 人 性别 身高 体重
Object: 张三 男 175 160
李四 男 180 150
二、MicroFlow 微流实现业务逻辑
--添加业务逻辑到App中,实现app对数据的自动处理
###1.Microflow 微流
实现app自动化
类似:if for case 子函数 function
Mendix: 建模、拖拽、图形化编程:实现自动化逻辑
2.何时使用微流
1.Change default behavior 扩展、修改默认操作
create button 按钮+输入判定 (新建course且课程收费必须在100-200块)
2.Business specific process 业务定制话流程/特别的计算公式:剩余预算=合同额-(实际费用+售前费用)
3.System integration 系统集成:数据库,Tc,web-service,人工智能算法
1)Mendix官方开发的一些Widget其实也是微流:
比如create button 其实也是个微流
Create button = 创建Object实例+展示一个界面show a age
用来解决标准的业务逻辑
2)Microflow微流解决客户定制化的业务逻辑action
Create button = 创建object实例+展示一个界面show a page +价格的判定
三、实践-微流使用
需求1:在课程列表添加一个按钮,点击这个按钮就可以选中这门课,为这门课安排培训事件
需求2:通过培训的开始时间,以及这门课持续的时间,自动计算
思路:结束时间=课程开始时间+课程持续时间
需求3.某次培训参加人数的总和
思路:当学员注册的时候,获取学员注册的课程,然后查找这个课程下所有注册学员的总数。
四、数据的有效性与一致性检验
数据校验
根据真实的业务逻辑,用户在输入数据的时候,在Mendix中去验证一个数据是否符合业务要求。
Mendix数据的信息、值保存在哪?
- Attribute特征中,属性值
- Association中:关联关系的值,也就是箭头的指向
在Domain Model中验证Attribute特征数据的有效性
###1.利用Validation Rules(这个名词,只能针对Domain Model中的Attribute数据校验)
六种验证规则
Required 必填,Unique 唯一,Equals =某个值,Range 范围,Regular express 正则表达式,
邮箱:^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$
Maximum length 最大长度
2.在Microflow中验证Associations关联关系数据的有效性
例如:周四的数学课这个TrainingEvent,必须把它和课程、老师、上课地点关联在一起。
但这个关联关系的指向不能再Domain model中用Validation Rule做判断
这个时候我们就要利用微流中的Decision来做数据有效性 的判断
如何写Decision表达式:
也就是微流表达式
-
调用一个Attribute值:$EntityName/AttributeName
$TrainingEvent/StartDate != empty AND
-
调用一个Association的指向(值):$EntityName/ModuleName.Association
$TrainingEvent/MyFirstModule.TrainingEvent_Course != empty
3.数据的删除
在新建一个Association时,它就会要求我们设定删除方式
一共有三种删除方式:
举例:Registration和TrainingEvent
A. 当删除TrainingEvent时:
-
保留所有与它相关的注册信息
- 同时也删除所有与它相关的注册信息(Cascading Delete)
- 只有当TrainingEvent没有关联任何注册信息,它才能被删除
选第三种方式!!!
B. 当删除Registration时:选第一种方式
Registration注册信息-----Trainee学习
1.删Registration时,Trainee不受影响,所以选第一种
2.删Trainee时,所有与他相关的注册都删了,选第二种方式
五、权限管理
一、Mendix权限管理概要
Mendix的权限管理在两个地方实现
- Project Security:设置app总体安全级别和配置总体权限
- Module Security:设置具体的每个页面page,微流microflow,实体entity甚至特征attribute的读写权限
只需要通过点击配置实现!
三种安全级别
二、两种角色:User Roles与Module Roles
我们要将Module Roles和User Roles链接在一起!
1)是将Module Roles赋值给User Roles
2)然后再将User Roles和我们终端用户的账号绑定
三、权限配置的基本步骤
四、其他配置
六、其他
能不能执行多线程
更多推荐
所有评论(0)