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
}
/**
* Renders the data cell content.
* Get the raw 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)
protected function getDataCellContent($model, $key, $index)
{
if ($this->content !== null) {
return call_user_func($this->content, $model, $key, $index, $this);
} 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.
* The default implementation simply renders a space.
* This method may be overridden to customize the rendering of the filter cell (if any).
......
......@@ -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 (is_string($this->value)) {
......@@ -149,8 +149,16 @@ class DataColumn extends Column
} elseif ($this->content === null && $this->attribute !== null) {
$value = ArrayHelper::getValue($model, $this->attribute);
} 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