Laravel 5.7路由传递给控制器​​只是第二个参数

时间:2019-01-30 10:09:54

标签: laravel laravel-5.7

我有以下路线

Route::get('/{slug}/pd/{public_id}', 'Products\ShowController');

我只想将public_id参数传递给ShowController。

       class ShowController extends Controller
{
        public function __invoke($public_id)
        {
            dd($public_id);
        }
    }

如果我运行上面的代码,它将返回段值。我需要一下才能成为网址中的通配符。

1 个答案:

答案 0 :(得分:0)

如果在数据库中某些词是slug,则可能可以检查路由前缀以从路由中删除该slug。如果不是,则将其放入控制器后,将其忽略。如果它在途中,它将在控制器中可用。

public class ServiceUploadData extends Service {
  Handler handler = new Handler();
  private Runnable periodicUpdate = new Runnable() {
    @Override
    public void run() {
      Log.v(TAG, "Service Upload Data Running Now");
      //check localDB and send the data if exist
      handler.postDelayed(this, 1000);
    }
  };

  @Override
  public int onStartCommand(Intent intent, int flags, int startId)
  {
    Log.v(TAG, "onStartCommand");
    context = this;
    handler.post(periodicUpdate);
    return START_STICKY;
  }
  //any @Override
}