Hi用户通过存储在数据库中的表单添加他们的DOB,

我想从Y-m-d格式的数据库中存储的日期计算年龄,

我的问题是:

  • 如何计算年龄?

  • 将逻辑放在哪里,在控制器中还是在模型中?

  • 如何以m-d-Y格式传递视图中存储的日期

  • 如何传递逻辑的结果,这是年龄的观点.

  • 我在我的模型中使用了如下所示的东西,对吗?

这是控制器:

public function index()   {   
    $profile   = User::find($this->userid())->profiledetailsHasOne;  //This has Dob field                   
    return view('profile.index',['profile' => $profile ]); 
}

这是我的模型:

public function getAge(){
    $this->birthdate->diff($this->attributes['dob'])
    ->format('%y years, %m months and %d days');
}

这是我的观点:

<tr>
    <th>Age</th>
    <td>{{$profile->getAge()}}</td>
</tr>

这是对的吗?我收到如下错误

Call to a member function diff() on null

推荐答案

要在视图中直接显示:

\Carbon\Carbon::parse($user->birth)->diff(\Carbon\Carbon::now())->format('%y years, %m months and %d days');

Database相关问答推荐

Golang Gorm和Gin无法创建具有关联的对象

创建一个spell check,判断具有合理运行时间的数据库

安装 SQL Server Management Studio Express后提示:Cannot open user default database. Login failed.

数据库设计 - 类别(categories)和子类别(sub-categories)

Mysql - 在所有数据库中查找表

阿拉伯字符串上的 WHERE 子句匹配问题

MongoDB:查询具有两个相等字段 $match 和 $eq 的文档

Laravel 5 从 URL 获取 ID

在插入数据库之前而不是在输出时转义 HTML 是不是一个坏主意?

在 SQL SERVER 中监视 SQL 查询的进度

在服务器上排序还是在客户端排序?

如何更改 MySQL DB 中所有表的前缀?

Android 在用户之间同步数据

Grails 中的 SQL/数据库视图

在数据库中存储年份

Data Mapper 是不是比 Active Record 更现代的趋势

如何在数据库中表示树状 struct

数据库 EAV 优点/缺点和替代方案

Windows phone 7 的本地 Sql 数据库支持

数据库索引及其 Big-O 表示法