我想知道这是否可能。在我的项目中,用户可以更新表的列值。但是其他用户在14天内看不到更新的值。在每次检索操作中将填充最多14天的旧值。有可能在laravel做吗?
只有一种方法,您需要存储这两个值。以price
列为例。我们可以在模型中定义访问器
有两列price
public function getPriceAttribute($value)
{
if($this->updated_at < Carbon::now()->subWeeks(2)) { // 14 days check
return $this->old_price;
}
return $value;
}
然后你可以使用它作为
$product->price;
您需要使用缓存或在表上添加另一个名为old\u column
的列,然后在模型中
可以包含一个getter/accessor来检查行上的updated\u时间戳,然后返回新/旧值。
public function getColumnAttribute($value)
{
if($this->updated_at < Carbon::now()->subWeeks(2)) {
return $this->old_column;
}
return $value;
}
请注意,由于您不清楚自己的列名,因此我将其命名为:
column
和old\u column
,模型上的函数名应该是get{column name}属性
见:https://laravel.com/docs/8.x/eloquent-mutators#defining-an-accessor
请注意,如果您希望编辑值的用户看到更改,则必须在表中包含
user_id
。但是在这一点上,您不会保留更改的所有权,最好制作一个diff
样式表,将所有这些更改作为日志存储。
我正在检索数据库值并将其放入数组列表(al)。该数组列表以表的形式显示在JSP页面中。我想修改JSP页面中的值,并使用Struts2更新数据库中的新值。我该怎么做? 主要行动类 这是POJO班 这是显示数组列表的JSP页面
我试图在一个路由上调用一个AJAX请求,该路由在UserController中调用这个函数updateImpression(),这个函数试图增加MySQL中存储的“users”表中名为“impressions\u cpunt”的计数器列。我试着使用Eloquent只更新一个特定用户的列。 我认为save()函数应该首先工作,但是我的数据库没有得到更新并返回原始计数,update()函数甚至没有从函
我明白我需要用硒,但我不知道怎么用。结果始终是单个字符串的列表。理想情况下,我希望返回两个列表:一个带有unix datestamp(option value=“1576627200”),另一个带有“normal”日期(即18/12/2019)的列表。 任何帮助都将不胜感激。
我在我的网站上有两步注册,我正在尝试更新数据栏中的用户信息数据。第一步是用户名和姓氏,第二步我尝试在JSON列中插入额外的数据。这是我的第二步更新: 但是这覆盖了我在第一步插入的旧数据。
当我想用帖子的现有标签编辑帖子时,它只显示一个标签,尽管所选帖子中有更多标签。我还想在后期编辑刀片中输入新标签。 后期创建代码 **post控制器中的post更新代码** **后期编辑刀片的标签代码**
问题内容: 我有这个: 有没有一种方法可以获取更新的列表作为结果,而不是就地更新原始列表? 问题答案: 我得到的最短信息: