aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_view/render/partials.rb
Commit message (Collapse)AuthorAgeFilesLines
* In heterogeneous collections, neither the @path nor the @template are ↵José Valim2010-01-151-1/+1
| | | | available, so we need to tell that we are simply rendering a collection.
* Provide useful information when instrumenting partials.José Valim2010-01-111-8/+6
|
* Use underscore in notification namespaces.José Valim2010-01-041-2/+2
|
* Use namespaces in notifications.José Valim2010-01-031-3/+4
|
* More <%= render(@posts) %> optimization.José Valim2009-12-261-24/+20
|
* Optimize <%= render(@posts) %>.José Valim2009-12-261-4/+14
|
* Break instrumentation into several end-points so rendering of partials can ↵José Valim2009-12-261-19/+23
| | | | be optimized.
* Wrap layout rendering in one method: _render_layout (this should make ↵José Valim2009-12-261-1/+1
| | | | partial instrumentation easier).
* Fix @renderer warningJoshua Peek2009-12-011-10/+10
|
* Fix issue with standalone ActionViewYehuda Katz2009-10-091-1/+4
|
* Switch to on-by-default XSS escaping for rails.Michael Koziarski2009-10-081-1/+1
| | | | | | | | | | | | This consists of: * String#html_safe! a method to mark a string as 'safe' * ActionView::SafeBuffer a string subclass which escapes anything unsafe which is concatenated to it * Calls to String#html_safe! throughout the rails helpers * a 'raw' helper which lets you concatenate trusted HTML from non-safety-aware sources (e.g. presantized strings in the DB) * New ERB implementation based on erubis which uses a SafeBuffer instead of a String Hat tip to Django for the inspiration.
* Caches and cache clearing seems to actually work, but the actual ↵Yehuda Katz2009-08-151-49/+73
| | | | architecture is kind of messy. Next: CLEAN UP.
* More cleanup of ActionView and reduction in need for blocks in some cases:Yehuda Katz2009-08-151-8/+5
| | | | | | | | * only one of partial_name or :as will be available as a local * `object` is removed * Simplify _layout_for in most cases. * Remove <% render :partial do |args| %> * <% render :partial do %> still works fine
* Clean up ActionView some:Yehuda Katz2009-08-151-2/+4
| | | | | | | | | | * Call _evaluate_assigns_and_ivars at the two entry points so we don't have to do a check at every render. * Make template.render viable without having to go through a wrapper method * Remove old TemplateHandler#render(template, local_assigns) path so we don't have to set self.template every time we render a template. * Move Template rescuing code to Template#render so it gets caught every time. * Pull in some tests from Pratik that test render @object in ActionView
* Tentatively accept the ":as or :object, but not both" solutionYehuda Katz2009-08-111-22/+21
|
* Further experimentation. Was able to cut the cost of rendering 100 partials ↵Yehuda Katz2009-08-111-9/+40
| | | | | | | | | | in a collection in half. To discuss: What are the desired semantics (if any) for layouts in a collection. There are no tests for it at present, and I'm not sure if it's needed at all. Deprecated on this branch: `object` pointing at the current object in partials. You can still use the partial name, or use :as to achieve the same thing. This is obviously up for discussion.
* Cache some more things to improve partial perfYehuda Katz2009-08-091-3/+3
|
* Went from 25% slower partials (vs. 2.3) to 10% faster. More to come.Yehuda Katz2009-08-091-3/+7
|
* Clean up partial object some more; replace passing around a block to a ↵Yehuda Katz2009-08-091-35/+39
| | | | single block ivar
* Clean up initializer and some of the internals of PartialRendererYehuda Katz2009-08-091-49/+41
|
* Ruby 1.9 compat: can't implicitly set instance var using block argJeremy Kemper2009-08-081-2/+2
|
* First pass at making partial rendering an Object. More cleanup to come.Yehuda Katz2009-08-081-60/+82
|
* Rename find_by_parts and find_by_parts? to find and exists?Yehuda Katz2009-08-071-1/+1
|
* Get all ActionController partial rendering to use ActionView's partial code. ↵Yehuda Katz2009-08-071-0/+4
| | | | | | | | | | | | | | Consequences: * It is not possible to always pre-determine the layout before going to ActionView. This was *already* broken for render :partial => @object, :layout => true. This is now handled by overriding render_to_body in layouts.rb and manually injecting the partial's response. This needs to be done in ActionController since ActionController knows enough to get _layout_for_option. There is probably a better abstraction here. * As a result, all partial rendering can correctly restrict their layouts to the mime type of the rendered partial. This could have previously caused a bug in some edge cases. * If other layout-like options are added, they might need to add special code for the case of render :partial. We should try to think of an alternate solution, if possible, but this works for the cases we know of now.
* Continue reworking the partial path.Yehuda Katz2009-08-071-44/+16
| | | | * TODO: Review ActionController calling render_template for certain partials. Might we be able to save logic by always delegating to AV's render_partial?
* Modify various partial methods to carry along the block that can be passed ↵Yehuda Katz2009-08-071-32/+29
| | | | | | | | | | in with render * _render_single_template, which renders a template without layout * _render_partial_unknown_type, which renders a partial of unknown type (the entry method for most partial rendering; supports strings, objects, and collections) * _render_partial_object, which renders a partial for a single object. * extracted _render_partial_path so it can be used to render the spacer without going through the public render :partial
* Some more AV work:Yehuda Katz2009-08-071-15/+18
| | | | | | | | * rename _render_partial to _render_partial_unknown_type to reflect that for this call, we don't know the type. * Merge _render_partial_with_block and _render_partial_with_layout to _render_partial * TODO: Check to see if any more logic can be shared * TODO: See about streamlining block path so we can get rid of @_proc_for_layout * Remove @exempt_from_layout as it is no longer needed
* Replace _render_template_with_layout with _render_template since the layout ↵Yehuda Katz2009-08-071-2/+2
| | | | is optional
* Some more AV refactoring:Yehuda Katz2009-08-071-11/+2
| | | | | * remove no longer used _array_like_objects * _render_content_with_layout renamed to _render_content since layout it optional * remove check for optional layout before _render_content
* Start cleaning up partial pathYehuda Katz2009-08-071-4/+6
|
* This is handled by the resolver nowYehuda Katz2009-08-071-24/+5
|
* Clean up render @object a bit more.Yehuda Katz2009-08-071-6/+19
|
* Improve a path in _render_partialYehuda Katz2009-08-061-24/+23
|
* replace _render_*_from_controller with render_* as they are intended to be ↵Yehuda Katz2009-08-061-1/+1
| | | | public
* Simplify required "ActionView compliant" APIYehuda Katz2009-07-191-4/+2
|
* Remove deprecated implicit ivar assignmentJoshua Peek2009-06-251-26/+0
|
* Drive the final stake through @content_for_*'s heart!Yehuda Katz + Carl Lerche2009-06-171-7/+0
|
* Break up DependencyModule's dual function of providing a "depend_on" DSL and ↵Joshua Peek2009-05-281-1/+1
| | | | "included" block DSL into separate modules. But, unify both approaches under AS::Concern.
* Implemented redirects and partial rendering in new base.Yehuda Katz + Carl Lerche2009-05-121-12/+20
|
* Refactor ActionView::PathYehuda Katz + Carl Lerche2009-04-221-3/+4
| | | | | | | | * Decouple from ActionController and ActionMailer * Bring back localization support. * Prepare to decouple templates from the filesystem. * Prepare to decouple localization from ActionView * Fix ActionMailer to take advantage of ActionView::Path
* Reorganize ActionController folder structureJoshua Peek2009-01-271-0/+28
|
* Begin unifying the interface between ActionController and ActionViewYehuda Katz2009-01-221-0/+300