小编Ant*_*iro的帖子

如何使用Laravel的Eloquent/Fluent将每一行设置为相同的值?

我需要更新所有行的一个数据库,以便在某一领域的所有他们等于单个值.这是一个例子.

假设我的数据库表是这样的:

id    |   data   |  confirmed
1     | someData |      0
2     | someData |      1
3     | someData |      0
Run Code Online (Sandbox Code Playgroud)

我想执行一个查询,将每行的确认字段设置为1.

我可以这样做:

$rows = MyModel::where('confirmed', '=', '0')->get();
foreach($rows as $row) {
    $row->confirmed = 0;
    $row->save();
}
Run Code Online (Sandbox Code Playgroud)

但似乎会有更好的方法吗?单个查询只会说"将每行'确认'字段设置为1".

Laravel的Eloquent/Fluent中是否存在这样的查询?

fluent laravel eloquent laravel-3

39
推荐指数
3
解决办法
4万
查看次数

Laravel 4 Eloquent ORM选择where - array作为参数

在Eloquent ORM中是否有解决方案?

我有父母的角色:

Array ( [0] => 87,  [1] => 65, ... )
Run Code Online (Sandbox Code Playgroud)

我想要选择表PRODUCTS其中parent_id列=数组中的任何id

laravel eloquent laravel-4

37
推荐指数
2
解决办法
5万
查看次数

Laravel 4 - 从Collection中获取属性数组

我有一组对象.假设对象是标签:

$tags = Tag::all();
Run Code Online (Sandbox Code Playgroud)

我想为每个标签检索某个属性,比如它的名称.我当然能做到

foreach ($tags as $tag) {
    $tag_names[] = $tag->name;
}
Run Code Online (Sandbox Code Playgroud)

但这个问题是否有更为荒谬的解决方案?

有点像$tags->name

laravel eloquent laravel-4

37
推荐指数
4
解决办法
5万
查看次数

Laravel - Forbidden您无权访问此服务器上的/

我的laravel安装昨天工作正常,但今天我收到以下错误:

Forbidden

You don't have permission to access / on this server.

Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.
Run Code Online (Sandbox Code Playgroud)

有谁知道我哪里出错了?

laravel laravel-4

34
推荐指数
12
解决办法
14万
查看次数

Laravel 4:使值/列的组合独特

我正在使用Laravel 4在我的数据库中导入一堆csv条目.

我不能指出一个必须是唯一的列,它是5列的组合,使其独特.但是:如何在Laravel中定义这个?

选项1:模式构建器
您可以使用$ table-> unique('email')方法,但这似乎只允许一列,而不是列的组合.

选项2:验证
不太可取,但我可以在插入之前验证模型.但是,再次使用"unique:[table]"验证规则,当其中一个列值不唯一时,它将返回错误,而不是它们的组合.

谁能告诉我应该怎么做呢?
我确定我错过了一些东西,但我可以用正确的方向推动:-)

谢谢,

迪特

laravel laravel-4

33
推荐指数
3
解决办法
2万
查看次数

如何在Laravel 4中自动加载Guzzle?

我怎样才能在Laravel 4中自动加载Guzzle

我尝试创建一个新的GuzzleHttp/Client时遇到以下错误:

Symfony \ Component \ Debug \ Exception \ FatalErrorException
Class 'GuzzleHttp\Client' not found
Run Code Online (Sandbox Code Playgroud)

我在composer.json自动加载部分中进行了以下设置:

autoload: {
    "psr-0": {
        "Guzzle\\": "src/"
    }
}
Run Code Online (Sandbox Code Playgroud)

php laravel composer-php guzzle laravel-4

27
推荐指数
1
解决办法
2万
查看次数

如何在开发模式下禁用模板缓存?

每当我在模板中更改某些内容时,我都必须手动清除缓存.有没有办法在开发模式下禁用模板缓存?

laravel laravel-4

26
推荐指数
4
解决办法
3万
查看次数

Laravel:雄辩地说明如何一次更新模型和相关模型

有谁知道是否可以做以下事情:

假设我们有一个名为User的模型和一个名为BestFriend的模型.用户与最好的朋友之间的关系是1:1.

我希望这些案例能够做到这样的事情,同时改变我的城市和我朋友的城市.

$me = User::find(1);

$me->update(array(
'city' => 'amsterdam',
'bestfriend.city' => 'amsterdam'
));
Run Code Online (Sandbox Code Playgroud)

所以基本上我想知道Eloquent是否足够聪明,能够理解基于数组键'bestfriend.city'的关系.

在此先感谢您的帮助!

更新:

在Laravel论坛上找到解决方案,但我也在这里发布,如果其他人正在寻找相同的东西:)

在您添加的模型中

// In your model...
public function setBestFriendArrayAttribute($values)
{
    $this->bestfriend->update($values);
}
Run Code Online (Sandbox Code Playgroud)

然后你就可以这样称呼它

$me->update(array(
    'city' => 'amsterdam',
    'BestFriendArray' => array(
        'city' => 'amsterdam'
    )
));
Run Code Online (Sandbox Code Playgroud)

奇迹般有效!

laravel eloquent laravel-4

25
推荐指数
2
解决办法
3万
查看次数

使用Laravel Form类添加"禁用"属性

使用Laravel 4的Form类,我们可以使用创建列表

 {{ @Form::select('colors', Colors::all()), $color }}
Run Code Online (Sandbox Code Playgroud)

问题:我们如何disabled使用Blade 添加属性而无需将干净的Blade语法重写为通常的丑陋形式?

laravel blade laravel-4

23
推荐指数
2
解决办法
4万
查看次数

Laravel 4迁移基表未找到

我正在尝试制作以下教程:https://medium.com/on-coding/e8d93c9ce0e2

说到运行:

php artisan migrate
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

[Exception]                                                                        
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'laravel.user' doesn't   
exist (SQL: alter table `user` add `id` int unsigned not null auto_increment prim  
ary key, add `username` varchar(255) null, add `password` varchar(255) null, add   
`email` varchar(255) null, add `created_at` datetime null, add `updated_at` datet  
ime null) (Bindings: array (                                                       
))
Run Code Online (Sandbox Code Playgroud)

数据库连接正常,迁移表已成功创建.正如您在错误消息中看到的那样,数据库名称已更改.

对我来说很奇怪的是,它试图改变表 - 它不存在 - 而不是创建它.

这是我的其他文件,如UserModel,Seeder,Migtation和DB Config.

CreateUserTable:

<?php

use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateUserTable extends Migration { …
Run Code Online (Sandbox Code Playgroud)

php mysql laravel laravel-4

23
推荐指数
1
解决办法
3万
查看次数

标签 统计

laravel ×10

laravel-4 ×9

eloquent ×4

php ×2

blade ×1

composer-php ×1

fluent ×1

guzzle ×1

laravel-3 ×1

mysql ×1