这个问题只发生在我的共享主机上的 Laravel 5.8 上。
它在我与 Laravel 5.7 的共享主机中运行良好。
它在我的本地环境中使用 Laravel 5.8 运行良好。
问题是:
每次我运行 php artisan 命令(仅在我与 Laravel 5.8 的共享主机上)时,我都会收到此错误
环境文件无效!由于名称无效,无法解析 dotenv 文件。
在 [APP_NAME] 上失败。
我的 .env 第一行是: APP_NAME=rased
更新到 Laravel 5.8 后,我的网站也变成了一个白色的空白页面!
我运行php artisan make:auth命令,然后我将逐步解释我接下来要做什么以了解场景,
问题是,这种情况可能会出现,我不想看到这个错误信息,点击注销后直接注销,即使会话已过期。
注意:这个问题不是因为没有添加@csrf
我正在使用 Laravel 5.8 虽然6.0.3
可用。我使用它是因为我遵循的教程使用的是 Laravel 5.8。
什么时候,我命令:
composer require laravel/passport
Run Code Online (Sandbox Code Playgroud)
它抛出一个错误
无法将您的要求解析为一组可安装的软件包。
问题 1 - 结论:删除 laravel/framework v5.8.35 - 结论:不要安装 laravel/framework v5.8.35 - laravel/passport 8.x-dev 需要照明/加密 ^6.0|^7.0 -> 可通过照明/加密满足[6.x-dev, 7.0.x-dev, v6.0.0, v6.0.1, v6.0.2, v6.0.3, v6.0.4, v6.1.0, v6.2.0, v6.3.0, v6.4.1]。- laravel/passport v8.0.0 需要照明/加密 ^6.0|^7.0 -> 照明/加密 [6.x-dev, 7.0.x-dev, v6.0.0, v6.0.1, v6.0.2, v6 可满足。 0.3、v6.0.4、v6.1.0、v6.2.0、v6.3.0、v6.4.1]。- 不要安装照明/加密 6.x-dev|不要安装 laravel/framework v5.8.35 - 不要安装照明/加密 7.0.x-dev|不要安装 laravel/framework v5.8.35 - 不要'不安装illumination/encryption v6.0.0|不安装laravel/framework v5.8。8.35,需要为 5.8.*) -> 可满足 laravel/framework[v5.8.35]。- laravel/passport ^8.0 的安装请求 -> laravel/passport[8.x-dev, v8.0.0] 可满足。
安装失败,将 …
我POST
在控制器内的请求方法上有这个验证规则:
class CreateOrderController extends Controller
{
public function create(Request $request)
{
$this->validate($request, [
'store_id' => $request->order_type === OrdersTypeConstants::P2P ? "" : "required|" . 'exists:stores,id',
'p2p_type' => [Rule::in([OrdersTypeConstants::P2PCOURIER, OrdersTypeConstants::P2PPURCHASE])],
'items' => 'required_if:p2p_type,'.OrdersTypeConstants::P2PPURCHASE.'|array',
'items.*.id' => 'nullable|numeric',
'items.*.quantity' => 'nullable|integer|min:1',
'items.*.adjustment' => 'nullable|numeric',
'items.*.image' => 'nullable|string',
'items.*.addons' => 'array',
'items.*.reward_applied' => 'boolean',
'items.*.replacement_strategy.type' => [
'string',
Rule::in([ItemReplacementStrategyConstants::REMOVE,ItemReplacementStrategyConstants::BEST_MATCH, ItemReplacementStrategyConstants::SPECIFIC])
],
'items.*.replacement_strategy.quantity' => 'integer|min:1',
'items.*.replacement_strategy.item_id' => 'numeric',
'address_id' => 'exists:addresses,id,user_id,' . $client_id,
'address_id_p1' => 'exists:addresses,id,user_id,' . $client_id,
'use_cash_deposit' => 'boolean',
]);
Run Code Online (Sandbox Code Playgroud)
有时它会返回,The …
我正在部署 Laravel 应用程序并想要优化自动加载,通常我会运行命令
composer install --optimize-autoloader --no-dev
Run Code Online (Sandbox Code Playgroud)
这是一个运行Laravel 5.8 的应用程序。我收到以下错误:
在 Application.php 第 662 行:未找到类 'BeyondCode\DumpServer\DumpServerServiceProvider'
脚本 @php artisan package:discover --ansi 处理返回的自动加载转储后事件,错误代码为 1
我正在尝试在我的工作中获取工作 ID。我尝试$this->job->getJobId()
但它返回一个空字符串。
<?php
namespace App\Jobs\Notifications;
use Illuminate\Bus\Queueable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Support\Facades\Auth;
class SendNotification implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public function __construct($notification, $fireShutdown)
{
$this->notification = $notification;
$this->fireShutdown = $fireShutdown;
}
public function handle()
{
dd($this->job->getJobId());
// Some Code
}
}
Run Code Online (Sandbox Code Playgroud) 我具有导入大约500万条大量记录的功能。
我还必须在导入过程中同时为相关表创建条目。
我必须对新条目进行束插入查询,并处理所有查询,并按块进行处理。
还有什么其他方法可以加快这一过程?
仅当经过身份验证的用户的角色等于某些内容时,我才需要应用特定的全局范围。因此,具有特定角色的用户将只能对给定的记录子集执行查询。
我可以轻松处理 User 模型(当前登录的用户),但不能处理范围内的 apply 方法。
https://github.com/laravel/framework/issues/22316#issuecomment-349548374
在 auth 中间件运行之前,范围构造函数很早就执行了。在 apply 方法中解析用户,而不是在构造函数中。
好的,所以我在apply
方法中:
<?php
namespace App\Scopes;
use Illuminate\Database\Eloquent\Scope;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Builder;
class UserScopeForSalesContactAdmin implements Scope
{
/**
* Apply the scope to a given Eloquent query builder.
*
* @param \Illuminate\Database\Eloquent\Builder $builder
* @param \Illuminate\Database\Eloquent\Model $model
* @return void
*/
public function apply(Builder $builder, Model $model)
{
dd('within apply', auth()->user());
dd(auth()->user()); // won't work
$builder->where('foo', '=', 'something from currently logged in user');
}
}
Run Code Online (Sandbox Code Playgroud)
显然第二个dd …
我正在尝试从两个相关表中搜索多个数据。具体来说,我只想从用户表中获取“名称列”,并从帖子表中获取其余列。但每当我尝试搜索时,它都会打印以下错误“尝试获取非对象的属性‘名称’”
以下是我的用户模型
<?php
namespace App;
use App\Mail\NewUserWelcomeMail;
use Illuminate\Notifications\Notifiable;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Support\Facades\Mail;
class User extends Authenticatable
{
use Notifiable;
protected $fillable = [
'name', 'email','phone', 'username', 'password',
'admin', 'address', 'description', 'approved_at',
];
protected $hidden = [
'password', 'remember_token',
];
public function posts()
{
return $this->hasMany(Post::class)->orderBy('created_at', 'DESC');
}
}
Run Code Online (Sandbox Code Playgroud)
并发布模型
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{
protected $guarded = [];
public function user()
{
return $this->belongsTo(User::class);
}
}
Run Code Online (Sandbox Code Playgroud)
还有我的控制器
public function showcampaign(User …
Run Code Online (Sandbox Code Playgroud) 服务器:数字海洋
Ubuntu 16.04
Laravel 5.8
我无法使用mailgun.com从laravel发送电子邮件
在Digital Ocean中,我在防火墙上打开了所有传出端口,在Digital Ocean中,我具有用于TXT和MX记录的正确DNS设置。我在域registar上拥有正确且经过验证的DNS记录,并且mailgun在所有域名上都带有绿色的选中标记
config / mail.php
return [
'driver' => 'mailgun',
'host' => 'smtp.mailgun.org',
'port' => 587,
'from' => [
'address' => 'orders@domain.com',
'name' => 'Company Name'
],
'encryption' => 'tls'),
'username' => 'orders@mg.domain.com',
'password' => 'xxxxd663hd02j727bb2eefd1ea38bbe0-58bc211a-670xxxx'
];
Run Code Online (Sandbox Code Playgroud)
config / services.php
'mailgun' => [
'domain' => 'https://api.mailgun.net/v3/mg.domain.com',
'secret' => 'xxxxehbe8v25g3374e5as3ff32a45995-39bc661a-4716xxxx',
],
Run Code Online (Sandbox Code Playgroud)
控制者
use Illuminate\Support\Facades\Mail;
$data = [
'email' => 'email@yahoo.com',
'name' => 'Bob Smith'
];
$body_data = [
'id' => '1234'
];
Mail::send('emails.shipped', $body_data, …
Run Code Online (Sandbox Code Playgroud) laravel-5.8 ×10
laravel ×9
php ×5
laravel-5.7 ×2
composer-php ×1
laravel-5 ×1
laravel-5.6 ×1
mailgun ×1
php-7.1 ×1
phpdotenv ×1
request ×1
validation ×1