如何在Laravel的1条路线上执行2个函数?

magiczna_sowa

我有个问题,

我希望我的路线/浏览器同时显示一些元素并通过一个书面函数检查一个条件,这是两个独立的函数,但是我希望它们在一条路线上运行,甚至可能吗?

web.php

Route::get('/browse',[PlantsController::class, 'browse'])->name('browse');
Route::get('check',[PlantsController::class, 'checkForWatering'])->name('check');

我试图做这样的事情:

 public function browse()
{
    $this->checkForWatering();

    $this->displayPlants();
}

但是结果是空白的页面。

这是我的功能:

  public function checkForWatering()
{
    $all = DB::table('plants')
    ->select('*')
    ->get();  

    foreach ($all as $result)
    {
        $now = Carbon::now();
        $nextWatering = (new Carbon ($result->watered_at))
        ->addDays($result->watering_frequency);            
        $daysPast = $nextWatering->diffInDays($now);

        $query = DB::table('plants')
        ->where('watering_frequency', '>=', $daysPast)
        ->get();
    
        $query->isEmpty() ? $result = true :  $result = false;
        return redirect()->route('browse')->with('result',$result);

    }
}


 public function displayPlants(){
    $now = new Carbon();

    $plants = DB::table('plants')
    ->where('user_id', '=', auth()->id())
    ->orderBy('watered_at', 'desc')
    ->get();

    foreach ($plants as $plant)
    {
        $plant->watered_at = Carbon::parse($plant->watered_at)
        ->diffForHumans();
        $plant->fertilized_at = Carbon::parse($plant->fertilized_at)
        ->diffForHumans();
    }

    return view('browse')->with('plants',$plants);

}
马特

您不返回视图,将浏览更改为:

public function browse() {
    $response = $this->checkForWatering();
    if (!empty($response)) {
         // If checkForWatering returned a response object, return it
         return $response;
    }
    return $this->displayPlants();
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Laravel的路线上获取过滤器

来自分类Dev

如何在设计路线上添加“ api”

来自分类Dev

ember.js-如何在不同的路线上连接两个组件?

来自分类Dev

如何在Angular2的特定路线上操纵组件

来自分类Dev

如何在postgis中检查两个点是否在同一条线上

来自分类Dev

如何在Typescript中依次执行2个函数?

来自分类Dev

javascript如何在滚动时在路线上移动元素

来自分类Dev

如何在特定路线上使用多种方法注释?

来自分类Dev

如何在特定的快递路线上设置不同的bodyparser

来自分类Dev

如何在特定路线上使用多种方法注释?

来自分类Dev

如何在路线上显示时间为谷歌地图

来自分类Dev

如何在红宝石路线上使用关注点

来自分类Dev

Laravel语言翻译不在第一条路线上加载

来自分类Dev

如何在一条线上加上短环?

来自分类Dev

如何在 Angular 路线中嵌套超过 1 个级别的路线?

来自分类Dev

如何从一条Laravel路线转换为另一条路线的价值

来自分类Dev

如何在1个Android.mk中创建2个可执行文件

来自分类Dev

如何在同一条sql语句中执行2条查询?

来自分类Dev

将开放模式作为另一条路线上的一条单独路线

来自分类Dev

EmberJS如何在单个排序的数组内的同一路线上加载多个模型

来自分类常见问题

如何在所有路线上应用canActivate Guard?

来自分类Dev

VueJs-如何在某些路线上隐藏全局组件(例如navbar)?

来自分类Dev

如何在发布路线上模拟Express / Node.js中间件?

来自分类Dev

React.js如何在非活动路线上切换类?

来自分类Dev

.get()需要回调函数,但在路线上有一个[object Undefined]。(匿名函数)为get []

来自分类Dev

如何在onload上执行一个js函数?

来自分类Dev

Laravel 5条路线合并

来自分类Dev

如何在 Laravel 中指定这条路线?

来自分类Dev

如何在Laravel中将数据从1个视图插入2个表

Related 相关文章

  1. 1

    如何在Laravel的路线上获取过滤器

  2. 2

    如何在设计路线上添加“ api”

  3. 3

    ember.js-如何在不同的路线上连接两个组件?

  4. 4

    如何在Angular2的特定路线上操纵组件

  5. 5

    如何在postgis中检查两个点是否在同一条线上

  6. 6

    如何在Typescript中依次执行2个函数?

  7. 7

    javascript如何在滚动时在路线上移动元素

  8. 8

    如何在特定路线上使用多种方法注释?

  9. 9

    如何在特定的快递路线上设置不同的bodyparser

  10. 10

    如何在特定路线上使用多种方法注释?

  11. 11

    如何在路线上显示时间为谷歌地图

  12. 12

    如何在红宝石路线上使用关注点

  13. 13

    Laravel语言翻译不在第一条路线上加载

  14. 14

    如何在一条线上加上短环?

  15. 15

    如何在 Angular 路线中嵌套超过 1 个级别的路线?

  16. 16

    如何从一条Laravel路线转换为另一条路线的价值

  17. 17

    如何在1个Android.mk中创建2个可执行文件

  18. 18

    如何在同一条sql语句中执行2条查询?

  19. 19

    将开放模式作为另一条路线上的一条单独路线

  20. 20

    EmberJS如何在单个排序的数组内的同一路线上加载多个模型

  21. 21

    如何在所有路线上应用canActivate Guard?

  22. 22

    VueJs-如何在某些路线上隐藏全局组件(例如navbar)?

  23. 23

    如何在发布路线上模拟Express / Node.js中间件?

  24. 24

    React.js如何在非活动路线上切换类?

  25. 25

    .get()需要回调函数,但在路线上有一个[object Undefined]。(匿名函数)为get []

  26. 26

    如何在onload上执行一个js函数?

  27. 27

    Laravel 5条路线合并

  28. 28

    如何在 Laravel 中指定这条路线?

  29. 29

    如何在Laravel中将数据从1个视图插入2个表

热门标签

归档