Laravel 4.2可以选择指定自定义视图,app/config/view.php例如:
/*
|--------------------------------------------------------------------------
| Pagination View
|--------------------------------------------------------------------------
|
| This view will be used to render the pagination link output, and can
| be easily customized here to show any view you like. A clean view
| compatible with Twitter's Bootstrap is given to you by default.
|
*/
'pagination' => 'pagination_slider-alt'
Run Code Online (Sandbox Code Playgroud)
这至少在Laravel 5中已经消失了view.php.
有没有办法在Laravel 5中复制这种行为?
是否可以手动注册用户(与工匠?)而不是通过身份验证注册页面?
我只需要一些用户帐户,并想知道是否有办法创建这些帐户而无需设置注册控制器和视图.
目前我使用它来通过ajax显示验证错误:
if (data.validation_failed == 1)
{
var arr = data.errors;
$.each(arr, function(index, value)
{
if (value.length != 0)
{
$("#validation-errors").append('<div class="alert alert-error"><strong>'+ value +'</strong><div>');
}
});
$('#ajax-loading').hide();
$("#validation-errors").show();
}
Run Code Online (Sandbox Code Playgroud)
它工作正常,完全符合我的需要.
问题是我必须做的就是将错误从laravel传输到ajax:
$rules = array(
'name' => 'required',
'password' => 'required'
);
$v = Validator::make(Input::all(), $rules);
if ( ! $v->passes())
{
$messages = $v->messages();
foreach ($rules as $key => $value)
{
$verrors[$key] = $messages->first($key);
}
if(Request::ajax())
{
$response_values = array(
'validation_failed' => 1,
'errors' => $verrors);
return Response::json($response_values);
}
else
{ …Run Code Online (Sandbox Code Playgroud) 我使用Laravel 5.2并且遇到中间件问题.routes.php中有代码
use Illuminate\Contracts\Auth\Access\Gate;
Route::group(['middleware' => 'web'], function () {
Route::auth();
Route::get('/', 'HomeController@index');
});
Route::group(['prefix'=>'admin', 'middleware' => 'admin'], function(){
Route::get('/', function(){
return view('admin.index');
});
Route::get('/user', function(){
return view('admin.user');
});
});
Kernel.php:
protected $routeMiddleware = [
...
'admin' => \App\Http\Middleware\AdminPanel::class,
];
AdminPanel.php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Facades\Auth;
use App\Role;
class AdminPanel
{
public function handle($request, Closure $next)
{
$user = Auth::user();
dd($user);
if($user){
$role = Role::whereName('admin')->first();
if($user->hasRole($role)){
return $next($request);
}
}
return redirect('/');
}
所以,
$user = …Run Code Online (Sandbox Code Playgroud) 如果我$table->softDeletes()在迁移中使用,则会向表中添加deleted_at时间戳可为空的列.
从现在开始,我可以得出结论,通过eloquent对该表的任何查询都将带有一个WHERE deleted_at IS NULL子句,确保只返回实时记录.
但我注意到没有为deleted_at创建索引.这个专栏的索引不应该是最重要的吗?
我希望我错过了一些东西.
我在Laravel 5(barryvdh/laravel-cors)中使用了全局中间件,但我只希望它在一个环境(dev)上运行.那是因为我只需要在开发环境中使用composer,因此它不会安装在生产环境中.
我注册了它在App Kernel中有一个全局中间件,所以如果我尝试在production(Class 'Barryvdh\Cors\CorsServiceProvider' not found)中部署我的应用程序,我会出错.我知道为什么,但我正在寻找解决方案.
有没有办法在laravel 5中全局声明中间件,但只在一个环境中需要?
我希望它足够清楚,如果不是我可以编辑我的帖子:)
如何将变量从中间件传递到控制器或执行此类中间件的路由?我看到一些关于将它附加到请求的帖子,如下所示:
$request->attributes->add(['key' => $value);
Run Code Online (Sandbox Code Playgroud)
还有其他人用闪光灯吸食:
Session::flash('key', $value);
Run Code Online (Sandbox Code Playgroud)
但我不确定这是最佳做法,还是有更好的方法来做到这一点?这是我的中间件和路线:
namespace App\Http\Middleware;
use Closure;
class TwilioWorkspaceCapability
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$workspaceCapability = new \Services_Twilio_TaskRouter_Workspace_Capability("xxxxx", "xxxx", "xxxx");
$workspaceCapability->allowFetchSubresources();
$workspaceCapability->allowDeleteSubresources();
$workspaceCapability->allowUpdatesSubresources();
$token = $workspaceCapability->generateToken();
//how do I pass variable $token back to the route that called this middleware
return $next($request);
}
}
Route::get('/manage', ['middleware' => 'twilio.workspace.capability', function (Request $request) {
return view('demo.manage', …Run Code Online (Sandbox Code Playgroud) 在Sublime Text 2中,我需要采取哪些步骤才能使Laravel Blade模板引擎的语法突出显示工作?
如http://daylerees.com/2012/04/06/notable-blade-syntax-support-by-medalink/中所述,我带了https://github.com/Medalink/Laravel-Blade,解压缩并复制该文件夹进入Sublime的packages文件夹.
但是,它似乎不起作用(见截图),即使我使用Tools\Command Palette手动设置它...\Set语法:Blade
这仅适用于特定的配色方案(如果是,哪些),或者我缺少什么?(我今天刚开始使用Sublime Text)

我正在尝试通过以下方式安装以下软件包composer:
https://packagist.org/packages/cartalyst/sentry#dev-feature/laravel-5
当我做:
composer require cartalyst/sentry dev-feature/laravel-5
Run Code Online (Sandbox Code Playgroud)
我总是收到这个错误:
[InvalidArgumentException]
Could not find package dev-feature/laravel-5 at any version for your minimum-stability (stable). Check the package spelling or your minimum-stability
Run Code Online (Sandbox Code Playgroud)
如果我改变minimum-stability到dev它仍然会抱怨.
不过,如果我安装dev-master并手动将文件从合并dev-feature/laravel-5到dev-master,它工作正常.
因此,为什么我要问如何通过强制安装此软件包composer.
我们有一个laravel 4.1应用程序,曾经在PHP 5.4下运行,但是自从升级到5.6.13(今天到5.6.14)后,我注意到查询已经开始有时返回0 FOUND_ROWS().在我们的一些查询中,它似乎是间歇性的,但在其他问题上,它更像是一个永久性的问题.
受影响最大的集合是具有子查询的集合.
我们正在使用PDO(我们没有使用laravel模型,只是直接与其PDO对象进行交互).MySQL在这个时间框架内也没有被修改过.
尝试了所有种类 - 一个建议是将跟踪模式设置为0,但这并没有帮助.我尝试设置PDO::MYSQL_ATTR_USE_BUFFERED_QUERY为false,但是当您尝试选择时会导致PDO错误FOUND_ROWS()(现在无法获得确切的消息).
没有回到5.4(请上帝没有),我完全卡住了......
直接在MySQL中运行这些查询,然后运行FOUND_ROWS() 始终返回正确的结果.
php ×7
laravel ×6
laravel-5 ×5
composer-php ×2
laravel-4 ×2
mysql ×2
eloquent ×1
laravel-5.2 ×1
middleware ×1
packagist ×1
pagination ×1
pdo ×1
sublimetext ×1
sublimetext2 ×1