使用{{}}的laravel刀片的最佳做法

时间:2016-06-15 22:16:12

标签: laravel laravel-blade

这两个中的哪一个是在laravel中使用刀片的最佳做法:

<p>{{ $person->name }} {{ $person->surname }}</p><p>{{ $person->name . ' ' . $person->surname }}</p>

谢谢!

2 个答案:

答案 0 :(得分:3)

两者都不是一个好的选择,因为如果一个是空的(名字或姓氏) - 你将有一个额外的空间并不意味着什么。

最佳做法是:

1)在Person类上实现类似getName()的方法,为您进行连接。例如

public function getName()
{
    return implode(' ', array_filter([$this->name, $this->surname])));
}

在您的模板中,它将变为<p>{{ $person->getName() }}</p>

2)如果在渲染之前有更多需要更改的属性 - 通常的做法是将它们全部提取到演示者类(这是一种设计模式)。然后您的模板看起来像<p>{{ $person->presenter()->getName() }}</p>。但如果它只是名字 - 你可能只是将它保存在Person类中。

答案 1 :(得分:0)

这通常都取决于个人偏好,两者都是非常有效的方法,我喜欢保持一切分开,因为至少对我来说(不是每个人都认为这更容易/更清洁),更容易添加额外的像这样的标记;

<b>{{ $person->surname }}</b>, <small class='text-muted'>{{ $person->name }}</small>

我总是喜欢用愚蠢的日子来思考它,如果你有一个你无法思考的日子,这对你来说更容易阅读:)