Ruby&Rails---ActiveAdmin快速建立属后台

Python011

Ruby&Rails---ActiveAdmin快速建立属后台,第1张

github: https://github.com/activeadmin/activeadmin

官方文档: https://activeadmin.info/index.html

devise是用于登录验证

由于我们使用devise,所以我们需要运行这个构造器

执行后会创建这些文件

终端执行

activeAdmin 会在seeds.rb中生成默认用户的创建方式,终端执行下面命令来生成后台用户

然后就可以访问了,会让你登录,就用刚生成的用户的信息

initializer/active_admin

因为不需要comment(注解)这个功能,所以在initializer中的active_admin中关闭这个功能

config.comments = false

在右上角有一些快速导航按钮,默认的有两个,一个是当前的admin用户,另外一个是登出按钮,我们可以增加导航按钮

eg: Post是我的一个model

执行后会生成app/admin/post.rb文件

使用permit_params方法来定义哪些属性可以被修改,如果修改了没有被permit_params定义的属性,修改不会生效

默认的,所有的CRUD的actions都可以操作,如果要禁用其中的某些操作,用如下定义:

一个resource默认都会在全局导航栏上,如果要禁止一个resource出现在全局导航栏上,我们可以用

menu有4个选项可以用:

:label - 指定该menu的名称

:parent -指定一个顶级菜单

:if -指定一个条件

:priority - 默认为10,在全局导航栏上的位置

config/initializers/active_admin.rb

提供4中样式,Block,Blog,Grid,Table,一般我们用的是table,也是默认的样式。这里只介绍table.

默认的,index页面会展示对应的model的所以字段,可供查看,修改,删除。

如果要自定义字段,可以用:

这些自定的字段要被index包裹

selectable_column 显示勾选框,用于批量操作

column 显示什么字段,该字段必须是model的字段名,可以给这个字段另取一个别名

还可以根据条件设置特别的row样式,这个some_style样式放在app/asset/stylesheets/active_admin.scss中

如果要给resource设置链接到查看,修改,删除这几个按钮,可以用actions方法

也可以增加自定的链接

获取重新设置链接

默认的表单是展示所有的字段

示例:

对应的图示:

link_to path 中的path指定的方式是

Index Filter 过滤器

一般的,通过上面这个形式就好了,activeadmin会自动判断其类型。

或者有另个情况,有个关联表。

通过:as可以指定类型,提供这一下这几种类型

语言层面上这两者有很多相似之处,不过从应用上,如果你想往 web 后端或者机器学习、数据挖掘上发展,选 Python;对前端感兴趣就学 Ruby 吧,LESS、SCSS 这些 CSS 预处理工具都是 Ruby 写的,而且 Ruby 开发者社区跟前端重叠度很高。另外,在 Mac 上,Ruby 的地位也是很高的。

偏后台关注性能的话,可以参考一下这个benchmark https。//www。techempower。com/benchmarks/

里面有很多的测试方式,可以综合看一下

当然开发效率也要综合考虑,python和ruby的开发效率我估计都比较高,但 python 有一个好处是适用面很广,很多后台运维的东东都可以用python很快搞定

推荐Java。

目前一般公司的后台用的开发语言大概有以下几种:java,python,php,asp.net,c++,rubyon rails 等等。

java

优点:性能好,适合大中项目,跨平台,安全性高,稳定可靠,运行效率高(尤其是JIT的出现之后差距更大了),不容易犯错(强类型、预编译、必须拦截异常等等),能有效的提高复用度,提升性能和吞吐能力,能规避安全问题。

缺点:开发复杂,开发和发布的效率相对较低,维护成本高,开发人员费用高

python

优点:简单易学,开发快,语言简洁,易于维护,开源,可移植,可扩展

缺点: 速度慢,格式强制,容易犯错

php:

优点:灵活,上手快,易修改,发布快捷,环境好部署

缺点:容易犯错,行效率不高,缺乏全局缓存

ruby on rails

优点:快速开发,使用者多,开发控件非常丰富

缺点:性能差,第三方包少

asp.net

优点:跨语言, 中小型项目上性能好,开发快,适合windows平台,维护成本低

缺点:代码逻辑混乱,难于管理,代码的可重用性差

国内的大公司偏业务的一般都用 Java 做后台开发比如淘宝,网易,美团等.

所以推荐选择java,北京尚学堂有着多年的java培训经验,雄厚的师资力量能让你体验到最好的java学习。