我想在我的应用程序中实现一个良好的错误处理,我已强制此文件捕获错误.
应用程序\ SERVICES\PayUService
try {
$this->buildXMLHeader; // Should be $this->buildXMLHeader();
} catch (Exception $e) {
return $e;
}
Run Code Online (Sandbox Code Playgroud)
应用程序\控制器\ ProductController的
function secTransaction(){
if ($e) {
return view('products.error', compact('e'));
}
}
Run Code Online (Sandbox Code Playgroud)
这就是我得到的.
我不知道为什么Laravel没有将我重定向到视图.错误是强制的吗?
我正在尝试测试一个类中的方法,该类包含使用 Laravel 中的 request() 帮助器的方法。这是方法:
类别类
public function getCanonicalUrl()
{
return preg_match('/\/sale\/./', request()->getRequestUri())
? ''
: url($this->getUrlKey());
}
Run Code Online (Sandbox Code Playgroud)
测试应该使这个帮助器在执行getRequestUri()时正确捕获 URI ,但它实际上返回一个空字符串。这是我进行的数千次测试之一。
测试
public function testCanonical()
{
// ...
$requestMock = Mockery::mock(Request::class)
->shouldReceive('getRequestUri')
->andReturn('/sale/random-string');
$this->app->instance(Request::class, $requestMock);
// ...
}
Run Code Online (Sandbox Code Playgroud)
关于如何实现这一目标有什么想法吗?提前致谢。
我正在尝试合并多个集合,但由于任何原因我无法执行此操作。我的代码看起来像这样:
$restaurant = \App\Restaurant::find(3);
$images = $restaurant->images;
$userimages = $restaurant->userimages;
$hours = $restaurant->hours;
$collectionMerge1 = $images->merge($userimages)->merge($hours);
$collectionMerge2 = $restaurant->userimages->merge($hours)->merge($images);
$collectionMerge3 = collect(array_merge($images->all(), $userimages->all(), $hours->all()));
Run Code Online (Sandbox Code Playgroud)
唯一有效的合并是最后一个。前面的没有显示集合包含的所有项目。为什么是这样?我究竟做错了什么?如果您查看图片,您会发现合并 1 和合并 2 中缺少对象。我尝试了多种方法来做到这一点,但只适用于最后一种。也许合并方法有密钥问题?
我从Laravel开始,我正在使用Illuminate/Html制作表格.
我想在第一个选项中添加禁用属性,但我找不到这样做的方法.
{!! Form::open(['url' => 'shelter/pets']) !!}
<div class="form-group">
{!! Form::label('pet_type','Type:') !!}
{!! Form::select('pet_type', ['Select Type','dog', 'cat'], 0, ['class' => 'form-control']) !!}
</div>
<div class="form-group">
{!! Form::submit('Add pet', null, ['class' => 'btn btn-primary form-control']) !!}
</div>
{!! Form::close() !!}
Run Code Online (Sandbox Code Playgroud) laravel ×4
php ×3
blade ×1
collections ×1
forms ×1
laravel-5.2 ×1
merge ×1
mockery ×1
mocking ×1
try-catch ×1
unit-testing ×1