Added render_each helper.

This commit is contained in:
Taylor Otwell 2012-03-22 16:05:33 -05:00
parent e04b7a3add
commit 0e4a63606f
3 changed files with 16 additions and 16 deletions

View File

@ -18,7 +18,6 @@ class Blade {
'yields',
'section_start',
'section_end',
'render_each',
);
/**
@ -239,19 +238,6 @@ protected static function compile_section_end($value)
return preg_replace('/@endsection/', '<?php \\Laravel\\Section::stop(); ?>', $value);
}
/**
* Rewrites Blade @render_each statements into View statements.
*
* @param string $value
* @return string
*/
protected static function compile_render_each($value)
{
$pattern = static::matcher('render_each');
return preg_replace($pattern, '$1<?php \\Laravel\\View::render_each$2; ?>', $value);
}
/**
* Get the regular expression for a generic Blade function.
*

View File

@ -437,3 +437,17 @@ function render($view, $data = array())
{
return Laravel\View::make($view, $data)->render();
}
/**
* Get the rendered contents of a partial from a loop.
*
* @param string $view
* @param array $data
* @param string $iterator
* @param string $empty
* @return string
*/
function render_each($partial, array $data, $iterator, $empty = 'raw|')
{
return Laravel\View::render_each($partial, $data, $iterator, $empty);
}

View File

@ -232,7 +232,7 @@ public static function composer($view, $composer)
* @param string $empty
* @return string
*/
public static function render_each($view, array $data, $iterator, $empty = null)
public static function render_each($view, array $data, $iterator, $empty = 'raw|')
{
$result = '';
@ -260,7 +260,7 @@ public static function render_each($view, array $data, $iterator, $empty = null)
}
else
{
$result = render($empty ?: $view.'_empty');
$result = render($empty);
}
}