Commit 3ad7d6d3 by Qiang Xue

Merge pull request #2284 from kartik-v/patch-12

Raw content return for Grid DataColumn & Column
parents 725ec9a9 cd1f7b10
...@@ -116,22 +116,34 @@ class Column extends Object ...@@ -116,22 +116,34 @@ class Column extends Object
} }
/** /**
* Renders the data cell content. * Get the raw data cell content.
* @param mixed $model the data model * @param mixed $model the data model
* @param mixed $key the key associated with the data model * @param mixed $key the key associated with the data model
* @param integer $index the zero-based index of the data model among the models array returned by [[GridView::dataProvider]]. * @param integer $index the zero-based index of the data model among the models array returned by [[GridView::dataProvider]].
* @return string the rendering result * @return string the rendering result
*/ */
protected function renderDataCellContent($model, $key, $index) protected function getDataCellContent($model, $key, $index)
{ {
if ($this->content !== null) { if ($this->content !== null) {
return call_user_func($this->content, $model, $key, $index, $this); return call_user_func($this->content, $model, $key, $index, $this);
} else { } else {
return $this->grid->emptyCell; return null;
} }
} }
/** /**
* Renders the data cell content.
* @param mixed $model the data model
* @param mixed $key the key associated with the data model
* @param integer $index the zero-based index of the data model among the models array returned by [[GridView::dataProvider]].
* @return string the rendering result
*/
protected function renderDataCellContent($model, $key, $index)
{
return ($this->content !== null) ? $this->getDataCellContent($model, $key, $index) : $this->grid->emptyCell;
}
/**
* Renders the filter cell content. * Renders the filter cell content.
* The default implementation simply renders a space. * The default implementation simply renders a space.
* This method may be overridden to customize the rendering of the filter cell (if any). * This method may be overridden to customize the rendering of the filter cell (if any).
......
...@@ -136,9 +136,9 @@ class DataColumn extends Column ...@@ -136,9 +136,9 @@ class DataColumn extends Column
} }
/** /**
* @inheritdoc * Return raw content
*/ */
protected function renderDataCellContent($model, $key, $index) protected function getDataCellContent($model, $key, $index)
{ {
if ($this->value !== null) { if ($this->value !== null) {
if (is_string($this->value)) { if (is_string($this->value)) {
...@@ -149,8 +149,16 @@ class DataColumn extends Column ...@@ -149,8 +149,16 @@ class DataColumn extends Column
} elseif ($this->content === null && $this->attribute !== null) { } elseif ($this->content === null && $this->attribute !== null) {
$value = ArrayHelper::getValue($model, $this->attribute); $value = ArrayHelper::getValue($model, $this->attribute);
} else { } else {
return parent::renderDataCellContent($model, $key, $index); return parent::getDataCellContent($model, $key, $index);
} }
return $this->grid->formatter->format($value, $this->format); return $value;
}
/**
* @inheritdoc
*/
protected function renderDataCellContent($model, $key, $index)
{
return $this->grid->formatter->format($this->getDataCellContent($model, $key, $index), $this->format);
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment