草庐IT

laravel4

全部标签

php - Laravel 播种机,调用未定义的方法::创建

我有一个用于不同型号的播种机,当我尝试artisandb:seed时,其中一个给了我以下错误PHPFatalerror:CalltoundefinedmethodIlluminate\Events\Dispatcher::create()inC:\www\site\bootstrap\compiled.phponline3155这是Event.php,似乎是导致问题的模型:belongsToMany('Deck','decks_events','event_id','deck_id');}}注意:我添加了protected$table='events'来尝试查看这是否是导致问题的原因,

php - Laravel 4 Controller 中的依赖注入(inject)实例所有对象

我想在Laravel4Controller中编写可测试的代码。我知道DI(依赖注入(inject)),我知道可测试代码可能如下所示:classUsersControllerextendsBaseController{publicfunction__construct(User$user,Notice$notice){$this->user=$user;$this->notice=$notice;}publicfunctiongetIndex(){...$this->user...$this->notice...}publicfunctiongetPage(){...$this->use

php - 如果 laravel 4 不存在,则将特定路由重定向到页面

如果他们拉取的数据不存在,我有一个路由需要重定向到另一个页面。路线是:Route::get('{link}/{data}','LinkController@getLink');其中{link}和{data}是模型绑定(bind)的:Route::model('link','Link');Route::model('data','Data');照原样,当此链接的数据不存在时它会返回404,如果它存在,它会按原样转到页面。我想做的是重定向到另一个页面,否则链接会出现404。我找到了关于如何在全局范围内执行此操作的建议,但我只希望它发生在这条路线上。有什么想法吗?

php - 是否可以在 laravel 中使用 IP 地址而不是 localhost?

我曾经将我的laravel应用程序部署到服务器中。有什么方法可以将localhost:8000更改为远程机器的ip或者可以将端口号8000更改为80吗? 最佳答案 要让它在本地主机之外工作,执行phpartisanserve--hostx.x.x.x如果您希望它在不指定浏览器端口的情况下工作,phpartisanserve--hostx.x.x.x--port80。在mac上可能需要sudo。注意:phpartisanserve绝不能用于生产。它仅用于开发和演示,只能处理一两个人的流量。

php - 更新用户时对 Laravel 空密码进行哈希处理

当我更新我的模型绑定(bind)表单时$user->update(Input::all())我的密码字段被重新哈希处理,即使它是空的。我已将我的User.php类设置为自动散列该字段,但不应跳过它,因为该字段为空吗? 最佳答案 在这种情况下你可以使用:Input::except('password')所以在你的Controller中你可以这样做:if(trim(Input::get('password'))==''){$data=Input::except('password');}else{$data=Input::all();}

php - Laravel 中与 AWS Sqs 队列相关的错误

我在尝试访问队列时在Laravel中遇到此错误-Class'Aws\Sqs\SqsClient'notfound我的默认队列是“sync”,我的composer.json中的任何地方都不需要“Sqs”。那为什么会这样呢?是否必须将它包含在较新版本的Laravel中。 最佳答案 首先检查.env文件中的值QUEUE_DRIVER。在您的情况下,它必须等于“同步”QUEUE_DRIVER=sync然后检查你的主管配置文件。可能您忘记更改这一行:command=php/my/app/dir/artisanqueue:work**sqs**

php - Laravel DB::表更新记录

我有这个问题DB::table('product_options')->where('product_id',$id)->where('size',$selected_size)->update(array('stock'=>WHATTOPUTHERE));在我放了WHATTOUPDATE的更新部分,我应该放什么才能使数字减1? 最佳答案 使用递减方法。http://laravel.com/docs/4.2/queries#updatesDB::table('product_options')->where('product_id'

php - Laravel 5 - 迁移中的复合键索引

复合索引是一个我没有完全体验过的主题,我不确定我做的是否正确?或者Laravel在迁移时是否正确解析了我的代码。这看起来正确吗?Schema::create('friends',function(Blueprint$table){$table->increments('id');$table->integer('requester_id')->unsigned();$table->integer('requestee_id')->unsigned();$table->timestamps();$table->foreign('requester_id')->references('id

php - 使用 touch() 更新 laravel 中自定义时间戳字段的时间戳

有没有一种方法可以使用touch()更新表中is_online字段的时间戳,而不是更新中的created_at字段laravelEloquentORM目前我正在使用User::where('id',$senderId)->update(array('is_online'=>date('Y-m-dH:i:s'))); 最佳答案 不,touch方法不是为更新内置时间戳以外的任何内容而编写的,但如果您愿意,您可以在用户模型中编写自己的函数。像这样classUserextendsEloquentimplementsUserInterface

php - 没有识别变量的 Laravel Eloquent

我正在尝试使用laravel-eloquent获取特定日期之后的房间和他们的预订。$fdate='2015-01-05';$roomdata=Rooms::where('city_id','=',$citydata['id'])->with('types')->with('localities')->with('slideshow')->with(array('booking'=>function($query){$query->where('bookstart','>',$fdate);}))->get();这给我一个错误,说$fdate未定义。但是当我这样做的时候$query->w