如何使控制器在单击时插入时间并在另一次单击时删除时间?

Posted

技术标签:

【中文标题】如何使控制器在单击时插入时间并在另一次单击时删除时间?【英文标题】:How to make controller to insert time on click and remove time on another click? 【发布时间】:2021-07-02 03:59:22 【问题描述】:

这是我的控制器,我想知道什么是正确的。

public function complete($id)

    $task = Task::find($id);
    if($task->done_at = '' or $task->done_at = null) 
        $task->done_at = date( 'Y-m-d H:i:s', strtotime( 'now' ) );

        $task->save();
     elseif ($task->done_at !== null) 
        $task->done_at = null;

        $task->save();
    

    return redirect()->route('tasks.index')->withSuccess('Done');

这是我的索引页面,其中有可供点击的表单

<form action=" route('tasks.complete', $task->id) " method="post">
                        @csrf
                        <button type="submit" name="submit"><p style="border-radius: 50%; color:red"></p></button>
                    </form>

【问题讨论】:

可能有错别字,$task-&gt;done_at = '' or $task-&gt;done_at = null 应该是$task-&gt;done_at == '' or $task-&gt;done_at == null,带有双= 符号 【参考方案1】:

您可以使用 empty() 函数进行检查。并且不要重复自己你也可以在 if else 条件之后使用保存功能。

谢谢:)

【讨论】:

以上是关于如何使控制器在单击时插入时间并在另一次单击时删除时间?的主要内容,如果未能解决你的问题,请参考以下文章

单击一帧中的链接并在另一帧中显示 JSP

单击表视图使其仅在第一次单击时附加字符串,而不是在 didSelectRowAtIndexPath 中的另一次单击时附加字符串

快速单击表格中的按钮时删除和插入新按钮

如何更改元素的 CSS 类并在单击时删除所有其他类

如何使下拉箭头(插入符号图标引导程序)在单击时更改?

如何使用 NSFetchedResultsController 在另一个表中单击同一项目时从一个表中删除项目