草庐IT

PHP Laravel 在重定向中将参数作为发布数据传递

注册成功后,我想将所有数据作为POST传递给登录路由。你如何在laravel4中做到这一点?我知道我可以在注册后对用户进行身份验证,但登录页面有其他参数和更多必需的身份验证过程。所以我希望将在注册过程中输入的用户名和密码推送到登录过程中,以便它可以通过登录路由内的其他过程。(例如,token生成需要app_id和app_secret的发布数据) 最佳答案 你可以使用LaravelEvents来做到这一点:在filters.php中注册您的事件或创建一个events.php并将其添加到composer.json:Event::list

php - 如何使用 Laravel 将二进制数据插入数据库?

我正在尝试使用Laravel4及其EloquentORM将二进制数据插入到PostgreSQL数据库中。我在迁移中有以下内容:Schema::create('DataBlobs',function($table){$table->increments('Id');$table->binary('Data');});运行迁移后,我已验证它创建了一个PostgreSQLBYTEA列。伟大的!所以我把它放在数据库播种器函数中:DB::table('DataBlobs')->delete();//$dcontainsthebinarydataIwanttoinsertintothedataba

php - 正确使用 Laravel 程序逻辑进行 API 调用?

我正在编写一个翻译器API,它会根据请求的服务调用各种其他API来执行翻译。我想我应该把它放到一个Controller中,但是如果我需要从另一个Controller或View中访问翻译器类怎么办?我应该把它的一部分放到模型中吗?为了速度,如果是内部请求,我不想像使用Request::create()调用外部URL那样调用服务。像这样的东西在View中有效,但我觉得应该有一种更优雅的方式来做到这一点。{{App::make('TranslatorController')->show($text,$to,App::getLocale());}} 最佳答案

php - 仅在用户上传新图像时更新图像,Laravel

我有一个编辑表单,其中有一个图像字段,用户可以根据需要上传新图像。但如果用户没有上传新照片,我不想验证图像字段,而只使用数据库中已有的照片。并且根本不更新图像字段。这是我的编辑功能:publicfunctionpostEdit($id){$product=Product::find($id);//Thisshouldbeinproductmodel,justtestinghere$edit_rules=array('category_id'=>'required|integer','title'=>'required|min:2','description'=>'required|mi

php - 如何让 laravel Password::Reset 使用用户 ID 而不是电子邮件?

我试图在Laravel中重置用户密码,但Password::reset方法正在password_tokens表中查找电子邮件列,而不是id列。$credentials=['password'=>Input::get('password'),'id'=>$currentUser->id,'token'=>Input::get('token'),'password_confirmation'=>Input::get('password_confirmation')];returnPassword::reset($credentials,function($user,$password){$

php - Laravel - 在触发查询之前执行函数

有没有办法让Eloquent/raw查询在查询被触发之前执行一个函数?如果我可以扩展功能以传递参数(无论该函数是否应该在之前运行),那也很好。根据函数的结果(真/假),不应执行查询。我很乐意使用“DB::listen”的主体,但我不确定是否可以从该函数中停止或运行查询。这样做的原因是我想自己建立一个小数据仓库,用于将结果永久保存到一个仓库(db)中,而不是一直查询一个庞大的数据库。我想使用的方法是创建一个查询的散列,检查仓库中是否存在该散列。如果存在,则返回该值。如果不是,则执行查询并将输出与哈希一起保存到仓库中。有什么想法吗?/////编辑/////我应该澄清一下,如果需要更新计算值

php - 如何在 PHPStorm 中调试 Laravel 应用程序?

我有一个AngularJS+Laravel应用程序,但无法设置调试。在项目根文件夹中,我有一个PHP文件,调试器总是在这个文件处中断。我使用PHPStorm并取消选中“第一行设置”服务器.phpX调试配置zend_extension=/usr/lib/php/extensions/no-debug-non-zts-20121212/xdebug.soxdebug.remote_enable=1xdebug.remote_host=localhostxdebug.remote_port=9000xdebug.remote_autostart=0我在本地开发机器上使用phpartisans

php - Laravel Auth Logout() + Session Flush() 没有注销用户

我已经有大约3个月无法成功注销我的应用程序了。注销路由上的Controller代码:Auth::logout();Session::flush();值得一提的是,用户表中的remembertoken列不为空,并且session配置驱动器是文件。编辑:我注意到注销后数据库中的内存token值正在更改,同时表现出保持登录的行为。 最佳答案 尝试使用publicfunctiongetLogout(){Auth::logout();//Session::flush();returnRedirect::to('login')->with('m

php - Eloquent 模型上的保留字

我有一个产品模型和一个属性模型。产品有属性。问题是我不能将属性用作扩展Eloquent产品类的成员,因为Eloquent已经使用了它。有解决办法吗?classProductextendsModel{protected$attributes;//...} 最佳答案 你不会绕过重命名你的关系。例如productAttributes。这里的问题是,Eloquent经常使用attributes属性,没有办法通过配置或覆盖一小段代码来更改它。您需要覆盖很多类才能将名称更改为其他名称,这绝对不值得。

php - 没有在 Eloquent 模型中设置表

我在使用Eloquent模型设置表格时遇到了一些问题。我以前做过很多次,但出于某种原因,这似乎不起作用。我在这里完全错过了什么吗?型号:classF5HostextendsEloquent{protected$guarded=array();protected$table='f5hosts';publicfunctionEnvironments(){return$this->belongsTo('Environment');}}用法:$host=newF5Host;return$host->all();错误:SQLSTATE[42S02]:Basetableorviewnotfound