Trailblazer - Rails 扩展框架


MIT
跨平台
Ruby

软件简介

Trailblazer 是基于 Rails
的一个瘦的封装层,加强了代码的封装使用,更直观的代码结构和面向对象架构。是一种概念驱动的架构模型,项目目录如下:

app
├── concepts
│ ├── comment
│ │ ├── cell.rb
│ │ ├── views
│ │ │ ├── show.haml
│ │ │ ├── list.haml
│ │ ├── assets
│ │ │ ├── comment.css.sass
│ │ ├── operation.rb
│ │ ├── twin.rb

架构:

验证器实例:

class Comment < ActiveRecord::Base
  class Create < Trailblazer::Operation
    contract do
      property :body, validates: {presence: true}
    end

    def process(params)
      @model = Comment.new

      validate(params[:comment], @model) do |f|
        f.save
      end
    end
  end
end