Comments (3)
Jay,
Thanks for asking questions!
- I'm hesitant to say it's ready. I'm very thankful to everyone that's trying it out and helping me polish things up. Before I declare it truly production ready I'd like to do more performance analysis, freeze a 1.0 feature set, and get have some of the code scrutinized.
- I'm draw a line between presenter and decorator, mostly for historical reasons. To me, a decorator is part of the view layer. Most people use presenter the same way, but I use presenter to refer to "plain old ruby objects" which are wrappers around multiple domain models at the data layer. So, going really "all-in," I might have multiple AR models which are wrapped in a decorator proxy at the model layer, then at the view layer wrap it with a decorator. Sounds awesome and crazy.
- That's interesting. I don't see why not. The only thing I can think of that would possibly cause an issue is the
self.model_name
inbase.rb
where we callActiveModel::Name.new(model_class)
-- but I did a quick test on Rails 3 / 1.9.2 and it was fine.
from draper.
On #2: That makes sense. I'd suggest adding something to the doc, explaining that - and, if you want to get into it a bit more, you can also Google some discussions about the difference between Presenter and Conductor (opinions seem to vary, and I have no idea who's right). It'd be good to give draper the Google juice for "rails presenter"; I've been Googling that once a week forever, every time I run into some ugly view logic.
from draper.
I'm going to think about the decorator/presenter thing more but close the issue for now. Please comment if you have any remaining questions.
from draper.
Related Issues (20)
- Path Helpers Failing when email is sent before call (CCI) HOT 3
- Create unique context for each item in a collection?
- Draper is incompatible with Ruby 3 HOT 5
- Draper changes the behaviour of url_for when using STI models
- Sending problematic method names (open, format) to decorated rails objects sends to Kernel (conflicts with ransack)
- undefined method `auto_link' for spec with type :decorator
- Generators don't work. HOT 3
- Draper::UninferrableDecoratorError (Could not infer a decorator for Document.) HOT 3
- CI: A test MAY fail with NameError: uninitialized constant ActionMailer::Base
- Release new version HOT 7
- Breaks respond_with in Rails API apps HOT 2
- ArgumentError using helpers with Ruby 3 HOT 4
- Mongo error -> Uninitialized constant ActiveRecord Did you mean? ActiveModel HOT 1
- Usage with `Turbo::Broadcastable` HOT 1
- undefined method `attributes' for nil:NilClass
- Automatically use decorated associations in delegate methods HOT 1
- Unexpected behavior when `frozen?` method is defined in model HOT 1
- Scaffold generator: Invalid path when using --model-name=Record
- Draper still actively maintained? HOT 10
- Rails - STI bug for ActiveRecord_Relation, works fine for a single record
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from draper.