我从一个数据库中抓取一组任务作为一个雄辩的集合,然后我将这个集合发送到我的视图,我在那里做了一个foreach.这里没问题.除此之外,我需要在我的视图中引用任务ID(网址操作等).但我显然不希望这个在源代码中,所以我使用这个library来散列id.但在视图中这样做似乎是错误的.
有没有办法在模型或控制器中散列id?
这是我在控制器中调用集合的方式:
$tasks = Auth::user()->tasks()->orderBy('created_at', 'desc')->get();
这就是我目前在我的视图中对id进行哈希的方法:
<a href="{{ route('tasks.markascompleted', hashids::encode($task->id)) }}">
有帮助吗?
解决方法:
您可以使用访问器方法来完成它.首先,在Task模型的顶部附加一个新属性:
protected $appends = ['hashid'];
public function getHashidAttribute()
{
return hashids::encode($this->attributes['id']);
}
<a href="{{ route('tasks.markascompleted', $task->hashid) }}">