文件名称:command_model:CommandModel-当update_attributes不够用时
文件大小:52KB
文件格式:ZIP
更新时间:2024-06-06 09:47:09
Ruby
命令模型 CommandModel是一个基于ActiveModel的类,它封装了包装域操作的用户交互逻辑。 该用户交互通常可以包括清除,验证,规范化和类型转换输入。 它还将包括域操作的响应。 处理用户请求时,存在三个主要问题:输入处理,域逻辑和持久性。 ActiveRecord将所有这三个方面混合在一起。 尽管这对于简单的CRUD非常方便,但是一旦域操作变得更加复杂,就很难使用它。 域模型通常比典型的ActiveRecord样式update_attributes具有更丰富的行为。 # yuck! account.update_attributes balance: account.balance - 50 # much better account.withdraw amount: 50 但是OO方法存在多种复杂性。 我们如何集成Rails样式验证? 用户提供的字符串类型如何转换?
【文件预览】:
command_model-master
----.gitignore(154B)
----.rspec(9B)
----gemfiles()
--------5.0.gemfile(83B)
--------5.1.gemfile(83B)
----.travis.yml(89B)
----.ruby-version(6B)
----LICENSE(1KB)
----examples()
--------bank()
----spec()
--------spec_helper.rb(40B)
--------convert_spec.rb(4KB)
--------model_spec.rb(8KB)
----command_model.gemspec(1KB)
----README.md(5KB)
----lib()
--------command_model()
--------command_model.rb(143B)
----Gemfile(98B)
----Rakefile(174B)