先感谢您!我有一个会话问题。当我存储和检索数据时,它可以工作。我有一张桌子,计划我有 2 个条目。第 1 次溢价和第 2 次免费增值。这只是一个订阅过程。所以我的问题是,当我点击溢价时,它应该获取唯一的溢价,但在我的情况下,它会打印溢价和免费增值。我的代码如下://Controller1. getplan()public function getPlan(){ $plans = ComposerPlan::get(); Session::put('plan', $plans); $this->layout->content = View::make('auth.authcomposer.composer-plan', compact('plans')); }2. getComSignuppublic function getComSignup(){ // Show the page $value = Session::get('plan'); $this->layout->content = View::make('auth.authcomposer.composer-signup', compact('value')); }//Blade//for put session<a class="btn btn-default btn-green no-pjax plan-box @if($blanket) hidden @endif" data-plan-id="{{ $plan->id }}" href="{{ URL('/composer-signup')}}">Select Plan</a>//for fetch session@foreach($value as $v) {{$v->name}}@endforeach
2 回答
HUWWW
TA贡献1874条经验 获得超12个赞
$plans = ComposerPlan::get();
Session::put('plan', $plans);
没有意义。
您只是将ComposerPlan表中的所有记录放入会话中
解决方案取决于您的ComposerPlan表中的内容。
如果ComposerPlan有可用的计划及其数据:
你应该有另一个关系表“user_id”+“plan_id”。这种关系也可以通过向其添加“plan_id”来存储在用户表中,因为据我了解,用户不应拥有超过 1 个计划
如果ComposerPlan是那个关系表:
$plans = ComposerPlan::where("user_id", auth()->id())->first();
//note: first() will get 1 result so no foreach() should be used
慕妹3242003
TA贡献1824条经验 获得超6个赞
我认为,您需要更改您的查询,因为您同时获得高级订阅和免费增值服务。
也许你需要添加这样的东西,取决于你的数据库。
$plans = ComposerPlan::where('subscription_type','premium')->get();
- 2 回答
- 0 关注
- 118 浏览
添加回答
举报
0/150
提交
取消