小编Mar*_*łek的帖子

文件上传到aws S3 Laravel 5.1

我收到以下错误:

FilesystemManager.php第179行中的FatalErrorException:未找到类'League\Flysystem\AwsS3v3\AwsS3Adapter'

码:

//Composer.json

    "require": {
            "php": ">=5.5.9",
            "laravel/framework": "5.1.*",
            "laravel/socialite": "~2.0",
            "guzzlehttp/guzzle": "~4.0",
            "predis/predis": "^1.0",
            "tymon/jwt-auth": "0.5.*",
            "league/flysystem-aws-s3-v2": "^1.0"
        },
        "require-dev": {
            "fzaninotto/faker": "~1.4",
            "mockery/mockery": "0.9.*",
            "phpunit/phpunit": "~4.0",
            "phpspec/phpspec": "~2.1"
        }

//config/filesystem.php


    'default' => 's3',
     'cloud' => 's3',
     'disks' => [

            'local' => [
                'driver' => 'local',
                'root'   => storage_path('app'),
            ],

            's3' => [
                'driver' => 's3',
                'key'    => '***********',
                'secret' => '**************************************',
                'region' => '*****',
                'bucket' => '************',
            ],


        ],

//FileController

    namespace App\Http\Controllers;
    use Illuminate\Http\Request;
    use App\Http\Requests;
    use …
Run Code Online (Sandbox Code Playgroud)

amazon-s3 laravel composer-php laravel-5 laravel-5.1

8
推荐指数
1
解决办法
8954
查看次数

Laravel MySQL orderBy计数

我正在使用Laravel和MySQL,我有一个表格帖子,用户可以对其进行评论,现在我想根据每个帖子的评论数量按升序/降序排序,我该如何在Laravel中这样做?我不想在帖子表中添加一个字段来跟踪每个帖子的评论数量,因为每次添加/删除评论或评论的评论时手动更新该字段会让我发疯...

这就是我创建帖子表和评论表的方法:

Schema::create('posts', function($table) {
    $table->increments('id');
    $table->string('title', 100)->unique();
    $table->string('content', 2000);
    $table->timestamps();
});
Schema::create('comments', function($table) {
    $table->increments('id');
    $table->string('content', 2000);
    $table->unsignedInteger('post_id');
    $table->foreign('post_id')->references('id')->on('posts')->onDelete('cascade')->onUpdate('cascade');
    $table->unsignedInteger('parent_id')->nullable();
    $table->foreign('parent_id')->references('id')->on('comments')->onDelete('cascade')->onUpdate('cascade');
    $table->timestamps();
});
Run Code Online (Sandbox Code Playgroud)

这就是我在Post模型中设置帖子和评论之间关系的方法:

public function comments() {
    return $this->hasMany('Comment', 'post_id');
}
Run Code Online (Sandbox Code Playgroud)

在评论模型中:

public function post() {
    return $this->belongsTo('Post', 'post_id');
}
Run Code Online (Sandbox Code Playgroud)

count sql-order-by laravel eloquent laravel-4

7
推荐指数
1
解决办法
4038
查看次数

Laravel:表单中的HTTPS :: open()

我在我的登录中使用SSL作为我的网站(Cloudflare HTTPS),因为我使用``,Laravel不会将我的网站链接转换为SSL版本,它会显示http版本.我如何强迫Laravel https为我使用?

例如:

<?=Form::open(array('id' =>'submit'))?>

   . . .

<?=Form::close()?>
Run Code Online (Sandbox Code Playgroud)

结果将是:

<form method="POST" action="http://example.com" accept-charset="UTF-8" id="submit">

</form>
Run Code Online (Sandbox Code Playgroud)

我想action成为一个HTTPS链接.

php ssl cloudflare laravel laravel-form

7
推荐指数
1
解决办法
5577
查看次数

Vagrant laravel box,客机进入无效状态

Laravels Homestead流浪者盒子工作正常,直到今天.Windows自动更新后,服务器无法启动并抛出以下错误消息:

客户机在等待引导时进入无效状态.有效状态为"开始,正在运行".机器处于"中止"状态.请验证所有配置是否正确,然后重试.

如果您正在使用的提供程序具有随附的GUI,则打开它并观察计算机通常很有帮助,因为GUI通常比Vagrant可以检索更多有用的错误消息.例如,如果您使用VirtualBox,请vagrant up在VirtualBox GUI打开时运行.

当我查看机器的日志文件时,我看到以下错误:

    d64.f9c: supR3HardenedMonitor_LdrLoadDll: pName=C:\Windows\system32\crypt32.dll *pfFlags=0x0 pwszSearchPath=00000000006fdf80:C:\Windows\system32
    d64.f9c: supR3HardenedScreenImage/LdrLoadDll: cache hit (Unknown Status -22900 (0xffffa68c)) on \Device\HarddiskVolume4\Windows\System32\crypt32.dll
    d64.f9c: Error (rc=0):
    d64.f9c: supR3HardenedScreenImage/LdrLoadDll: cached rc=Unknown Status -22900 (0xffffa68c) fImage=1 fProtect=0x0 fAccess=0x0 cErrorHits=2 \Device\HarddiskVolume4\Windows\System32\crypt32.dll
    d64.f9c: Error (rc=0):
    d64.f9c: supR3HardenedMonitor_LdrLoadDll: rejecting 'C:\Windows\system32\crypt32.dll': rcNt=0xc0000190
    d64.f9c: supR3HardenedMonitor_LdrLoadDll: returns rcNt=0xc0000190      'C:\Windows\system32\crypt32.dll'
    d64.f9c: Fatal error:
    d64.f9c: Error loading 'crypt32.dll': 1790 [C:\Windows\system32\crypt32.dll]
    fec.24d8: supR3HardenedWinDoReSpawn(2): Quitting: ExitCode=0x1 rcNt=0x0
    1278.950: supR3HardenedWinDoReSpawn(1): Quitting: ExitCode=0x1 rcNt=0x0
Run Code Online (Sandbox Code Playgroud)

有人曾经遇到过这个问题吗?我的crypt32.dll是否已损坏?

virtualbox vagrant laravel homestead

7
推荐指数
1
解决办法
2967
查看次数

PhpStorm + GIT行结尾从LF变为CRLF

我已经将我的PhpStorm行结尾设置为LF,但是当我提交github时,有时我会看到一些文件再次出现在CRLF行结尾(我在Windows上工作).

它发生在我编辑的相同文件中,没有人在我的提交/推送到存储库之间编辑它们.这非常烦人,我需要经常将行结尾更改为同一个文件.它可能是什么以及如何解决它?

我也检查了选项"如果要提交CRLF行分隔符就警告"

编辑

我的本地git配置是这样的:

[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
    hideDotFiles = dotGitOnly
[remote "origin"]
    url = https://github.com/*
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "develop"]
    remote = origin
    merge = refs/heads/develop
Run Code Online (Sandbox Code Playgroud)

我的全局配置是这样的:

[user]
    name = *
    email = *
[core]
    autocrlf = false
Run Code Online (Sandbox Code Playgroud)

我的系统范围配置是这样的:

[core]
    symlinks = false
    autocrlf = false
[color]
    diff = auto
    status = auto
    branch = auto
    interactive = true
[pack]
    packSizeLimit = 2g …
Run Code Online (Sandbox Code Playgroud)

git github line-endings phpstorm

7
推荐指数
2
解决办法
8592
查看次数

Laravel将JSON转换为数组?

我正在尝试将JSON字段转换为数组.例如,模型是这样的:

protected $casts = [
    'content' => 'array'
]; 
Run Code Online (Sandbox Code Playgroud)

在插入内容时,我这样做:

'content'=> json_encode([
                'description' => $faker->paragraph(3),
                'about' => $faker->paragraph(2),
                'info' => $faker->paragraph(2),
                'updated' => $faker->dateTimeBetween('-1 years', 'now')
]),
Run Code Online (Sandbox Code Playgroud)

但在获取数据时,它会打印一个字符串,而不是其他内容.

此部分中的迁移如下所示:

$campaign->json('content');
Run Code Online (Sandbox Code Playgroud)

输出样本:

"content": "{\"description\":\"Ut quas quo odio illo. Voluptates quia fuga itaque sint. Velit sapiente fugit ea ut ducimus sint tempora eligendi. Ea et molestiae consequuntur quibusdam soluta voluptatem.\",\"about\":\"Aut voluptates et iste ut perspiciatis. Esse sunt ullam inventore sit doloremque et quisquam.\",\"info\":\"Corrupti et facere exercitationem consequatur aspernatur quo saepe. Omnis et …
Run Code Online (Sandbox Code Playgroud)

php json laravel eloquent laravel-5

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

Laravel 布尔值在查询中返回“1”/“0”而不是真/假

我有一个查询,它在我用 Laravel 开发的 REST API 上返回一个布尔字段(顺便说一句,我在 SQL Server 上),几天前它返回值为真/假,但现在它返回那个布尔值值作为字符串:“1”/“0”。

知道它可能是什么吗?

我尝试在我的模型上使用强制转换,如下所示:

 protected $casts = [
    'status' => 'boolean',
 ];
Run Code Online (Sandbox Code Playgroud)

这是我的查询:

return DB::table('dbo.visits as V')
        ->leftJoin('dbo.reports AS R', 'R.id_visit', '=', 'V.id')
        ->select('R.id','R.status'); // status is the boolean
Run Code Online (Sandbox Code Playgroud)

提前致谢。

php sql-server laravel eloquent laravel-query-builder

7
推荐指数
1
解决办法
9593
查看次数

如何在Laravel 4中创建自定义Facade

看了几个关于外墙和laravel 4的教程...尝试了一些......不喜欢他们工作的方式.

例如,他们并不都提供了一种定义外观文件和服务提供商存储位置的方法......我试图远离那个并让我的头撞到几个墙,直到我决定做这个线程.

所以:假设我有一个名为Laracms(laravel cms)的应用程序.

我想将我创建的所有内容 - 外墙,服务提供商等存储在名为laracms的app下的文件夹中.

所以我有/ app/laracms/facades,/ app/laracms/serviceproviders等等.我不想将外观与数据库模型混合在一起,我希望尽可能将内容保持分离.

在我的例子中,现在让我们看一下外观的设置名称(我希望实现一个设置类,用于视图和管理员来设置misc.的东西).

Settings :: get(),Settings :: set()作为方法.

任何人都可以解释如何正确设置外墙?我不知道我做错了什么,我需要一个新的开始.

谢谢,克里斯

寻找一步一步的简单解释如何以及为什么.

php database facade laravel laravel-4

6
推荐指数
1
解决办法
2093
查看次数

数据库设计 - 关系与属性

我在设计数据库(SQL/MySQL)时遇到问题.假设我们有一个用户,用户可以有很多朋友和很多帖子,并填写一些关于他自己的数据.

很明显,因为friends我们需要一个pivot_table用于n:n关系,因为posts我们需要创建一个带有user_id(1:n)关系的额外表.

所以我们需要users,user_friendsposts表.这很明显.这就是应该如何处理关系.

但现在让我们假设我们希望用户拥有以下数据:

name - text
description - text
marital status - select only one from list
favourite colour - select only one from list
hobby - select up to 3 from list
Run Code Online (Sandbox Code Playgroud)

对于文本字段(名称,描述),我们只需在users表中创建varchar/text列就可以了.

一般问题是:如何处理其他字段(从列表中选择)?我应该为它们创建关系,还是应该用它们创建标准数据列?

在我看来,没有必要为此创建关系表,因为使用列表(选择)我们只限制用户实际上可以粘贴到数据库中.理论上,我们可以允许用户手动输入他喜欢的颜色(例如red,如果他输入错误的东西,例如reds我们会比较它将允许的列表colours).性别也是如此 - 我认为,当我们只拥有女性和男性并为其创造关系时,创造额外的表格是没有意义的.

第一个DB设计:

例如,我可以为属性创建以下列:

marital_status - int
fav_colour - int
hobby_1 - int
hobby_2 - int
hobby_3 - int
Run Code Online (Sandbox Code Playgroud)

还有另外一个表(甚至用PHP或其他语言的普通数组),我存储值为1的fav_colour例如是红色,值为2的爱好是音乐等等(我在这里存储这些值并不重要- 我也可以使用enum …

mysql sql database database-design relational-database

6
推荐指数
1
解决办法
692
查看次数

如果以后的记录无法在Laravel 5中添加,如何回滚新记录?

在我的控制器中,我有类似于以下代码:

$a = new A();
$a->content = "blah";
$a->save();

$b = new B();
$b->content = "blah2";
$b->a_id = $a->id;
$b->save();

$c = new C();
$c->content = "blah3";
$c->b_id = $b->id;
Run Code Online (Sandbox Code Playgroud)

在那里A,B并且C是所有车型.

如您所见,每个模型分配都依赖于先前正确分配的记录(即C依赖BB依赖C)

我想制作代码,以便如果其中一个新记录失败,它会删除所有以前的记录(即全部或全部).

例如,

  • 如果A保存失败,代码将正常结束
  • 如果B无法保存,则会删除其相应的A记录
  • 如果C无法保存,它删除其相应的BA记录

我该怎么做呢?

php sql laravel laravel-5 laravel-5.1

6
推荐指数
1
解决办法
2846
查看次数