显示的是错误101,给人的感觉是没有初始化.
打个比方.我用http://localhost(这个是在云上远程桌面打开的.用域名访问一样错误)/record/6/show 这个访问是无法访问链接 错误101
然后用http://localhost:8000/record/6/show 访问一次后,上面的问题也就没有了.
laravel 发布到云端上,一切OK.最近发现一个问题.
laravel主业什么的都好.数据正常添加,但是发现,添加完第一条数据调用SHOW方法的时候,浏览器显示错误.查看发现根本没有执行.返回空页面....然后在远端调用 artisan sever 用8000端口访问就好了.连带服务器的apache80端口的也可以使用.....
这个问题很早时候在本机写的时候也发现过.但是没有引起注意..
(简单说就是访问member/1错误.要打开artisan sever ,用8000端口访问一次member/1就没问题了,求助出现这个问题的可能原因...)
还有是不是route文件中用了function()的方法 route:cache 就失效了
由于网络延迟导致的两次点击.就比如我刚刚一下子点了三下.就发了三个帖子.
谢谢排版,还想补充一个问题.多对多情况下,要想取出 A=1和2对应的B语句应该如何写...期待大神
从A belongsToMany 找到B , B的关联 hasMany C
求A的关联C的所有值
A:
class Shop extends Model
{
public function members()
{
return $this->belongsToMany('App\Member');
}
}
B:
class Member extends Model
{
public function shops()
{
return $this->belongsToMany('App\Shop');
}
}
public function member_reminds()
{
return $this->hasMany('App\Member_remind');
}
C:
class Member_remind extends Model
{
public function member()
{
return $this->belongsTo('App\Member');
}
}
试过两个方法,
①
1--首先取出 ID为1的A:SHOP 关联B: MEMBERS 的ID 列表 (lists('id'))
2--然后用C的whereIn来取出数据
问题是这样产生的SQL语句特别长,特别是关联B的条数上升ID列表越来越长
②
直接用DB::table方法,用JOIN
DB::table('member_reminds')
->join('members','members.id','=','member_reminds.member_id' )
->join('member_shop','members.id','=','member_shop.member_id')
->join('shops','shops.id','=','member_shop.shop_id' )
->where('shops.id','=' ,$shop->id)
->get()
问题是获得的数据是一维的,不能象别的Model产生的可以关联
比如 $member_remind->member->name
请问有什么比较好的方案