首页
/ ActiveScaffold 技术文档

ActiveScaffold 技术文档

2024-12-10 01:01:48作者:殷蕙予

1. 安装指南

环境要求

  • Rails 版本 >= 5.2.0
  • Ruby 版本 >= 2.5.0

安装步骤

  1. 添加 Gem 到 Gemfile

    在项目的 Gemfile 中添加以下内容:

    gem 'active_scaffold'
    

    如果使用 Rails >= 5.1,还需要添加 jquery-rails

    gem 'jquery-rails'
    
  2. 安装依赖

    运行以下命令安装依赖:

    bundle install
    
  3. 安装 ActiveScaffold

    运行以下命令安装 ActiveScaffold:

    rails g active_scaffold:install
    
  4. 创建数据库并运行迁移

    运行以下命令创建数据库并运行迁移:

    rails db:create
    rails g active_scaffold:resource Model [attrs]
    rails db:migrate
    
  5. 启动应用

    启动 Rails 服务器并访问 localhost:3000/<plural_model> 查看效果。

2. 项目的使用说明

基本功能

ActiveScaffold 提供了快速且强大的用户界面,用于处理 Rails 应用程序中的 CRUD(创建、读取、更新、删除)操作。它还提供了搜索、分页和布局控制等额外功能。

推荐配置

ApplicationController 中调用 clear_helpers,以避免 ActiveScaffold 定义的辅助方法与其他控制器中的方法冲突:

class ApplicationController < ActionController::Base
  clear_helpers
end

线程安全

可以通过在初始化器中调用 ActiveScaffold.threadsafe! 来启用线程安全模式。需要注意的是,线程安全模式一旦启用,无法禁用。

# config/initializers/active_scaffold.rb
ActiveScaffold.threadsafe!

3. 项目 API 使用文档

自定义配置

ActiveScaffold 提供了丰富的 API 用于自定义配置。详细的 API 文档可以在项目的 Wiki 中找到。以下是一些常用的配置示例:

自定义列显示

class UsersController < ApplicationController
  active_scaffold do |config|
    config.list.columns = [:name, :email]
  end
end

自定义搜索

class UsersController < ApplicationController
  active_scaffold do |config|
    config.actions.add :search
    config.search.columns = [:name, :email]
  end
end

自定义分页

class UsersController < ApplicationController
  active_scaffold do |config|
    config.list.per_page = 25
  end
end

4. 项目安装方式

ActiveScaffold 可以通过以下几种方式安装:

通过 Gemfile 安装

Gemfile 中添加 gem 'active_scaffold',然后运行 bundle install

通过命令行安装

运行以下命令安装 ActiveScaffold:

rails g active_scaffold:install

手动安装

可以从 GitHub 下载源代码,然后手动集成到项目中。


通过以上步骤,您可以成功安装并使用 ActiveScaffold 来快速构建 Rails 应用程序的用户界面。

热门项目推荐
相关项目推荐

项目优选

收起
Python-100-DaysPython-100-Days
Python - 100天从新手到大师
Python
410
82
LangChatLangChat
LangChat: Java LLMs/AI Project, Supports Multi AI Providers( Gitee AI/ 智谱清言 / 阿里通义 / 百度千帆 / DeepSeek / 抖音豆包 / 零一万物 / 讯飞星火 / OpenAI / Gemini / Ollama / Azure / Claude 等大模型), Java生态下AI大模型产品解决方案,快速构建企业级AI知识库、AI机器人应用
Java
20
4
open-eBackupopen-eBackup
open-eBackup是一款开源备份软件,采用集群高扩展架构,通过应用备份通用框架、并行备份等技术,为主流数据库、虚拟化、文件系统、大数据等应用提供E2E的数据备份、恢复等能力,帮助用户实现关键数据高效保护。
HTML
85
64
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
277
72
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
201
47
MateChatMateChat
前端智能化场景解决方案UI库,轻松构建你的AI应用,我们将持续完善更新,欢迎你的使用与建议。 官网地址:https://matechat.gitcode.com
149
25
source-vuesource-vue
🔥 一直想做一款追求极致用户体验的快速开发平台,看了很多优秀的开源项目但是发现没有合适的。于是利用空闲休息时间对若依框架进行扩展写了一套快速开发系统。如此有了开源字节快速开发平台。该平台基于 Spring Boot + MyBatis + Vue & Element ,包含微信小程序 & Uniapp, Web 报表、可视化大屏、三方登录、支付、短信、邮件、OSS...
Java
26
2
RuoYi-Cloud-Vue3RuoYi-Cloud-Vue3
🎉 基于Spring Boot、Spring Cloud & Alibaba、Vue3 & Vite、Element Plus的分布式前后端分离微服务架构权限管理系统
Vue
44
27
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
55
44
RuoYi-AppRuoYi-App
🎉 RuoYi APP 移动端框架,基于uniapp+uniui封装的一套基础模版,支持H5、APP、微信小程序、支付宝小程序等,实现了与RuoYi-Vue、RuoYi-Cloud后台完美对接。
Vue
48
12