设置:
带有帖子的博客,使用 Laravel 构建,其中:
因此总共有 3000 张图像*需要存储(我猜是调整大小)、呈现等。
从长远来看,这是理想的数量,我并不是在寻找“可扩展”的解决方案,因为不会出现疯狂的指数增长。
*实际上,目前它较少,并且我认为对于这些数量的媒体文件来说,它是 1000/1500/2000 还是 3000 并不重要。如果这是错误的,请纠正我。
需要注意的一些额外事项:
因此,困境在于将所有图像本地存储在 Storage 文件夹中(使用某些 Laravel 包操作图像)。另一种可能性是 cloudinary,我对此不太了解,只是它能够存储/操作/备份/使用他们的 api 来呈现我存储在那里的图像。
如果我选择在本地进行 - 在本地存储用户上传的图像是否安全?如何确保它不是伪装成图像文件的恶意软件?
如此大量的图像/内容在本地存储时是否会导致共享主机的性能问题?
使用 cloudinary 对我来说有什么好处?
谢谢。
我想为我的文章创建评论部分。我的逻辑是,文章有很多评论,用户(文章的读者)有很多评论。所以我做了一个有2个外键的表。
如果文章被删除->级联并删除评论。
如果用户被删除,我该如何保留对文章的评论?这是代码:
Schema::create('comments', function (Blueprint $table) {
$table->bigIncrements('id');
$table->text('body');
$table->unsignedBigInteger('article_id');
$table->unsignedBigInteger('user_id');
$table->timestamps();
$table->foreign('article_id')->references('id')->on('articles')->onDelete('cascade');
$table->foreign('user_id')->references('id')->on('users')->onDelete('**what do I write here?**');
});
Run Code Online (Sandbox Code Playgroud)