出于测试目的,我想通过队列发送原始邮件。
我可以发送这样的原始邮件:
Mail::raw('bonjour', function($message) {
$message->subject('Email de test')
->to('test@example.org');
});
Run Code Online (Sandbox Code Playgroud)
但是有没有办法通过队列发送原始邮件(不创建视图或可邮寄)?
我的问题是关于Laravel 验证规则的。
我有两个输入a和b。a是具有三个可能的值选择输入:x,y和z。我想写这个规则:
b必须有一个价值仅a值是x。并且b必须为空。
有没有办法写这样的规则?我尝试过required_with,required_without但似乎无法解决我的问题。
换句话说,如果前面的解释不够清楚:
a== x,则b必须有一个值。a!= x,则b必须为空。根据文档,使用Laravel,我可以Mailable通过控制器返回a ,以在浏览器中显示它。它有助于预览邮件。
有没有办法在浏览器中预览邮件通知?
我试过了:
return (new MyNotification())->toMail($some_user);
Run Code Online (Sandbox Code Playgroud)
但这不起作用:
响应内容必须是实现__toString()的字符串或对象,即“ object”。
我在 PostgreSQL 数据库中使用此表:
create table if not exists "Service" (
_id uuid not null primary key,
service text not null,
"count" integer not null,
"date" timestamp with time zone,
team uuid,
organisation uuid,
"createdAt" timestamp with time zone not null,
"updatedAt" timestamp with time zone not null,
unique (service, "date", organisation),
foreign key ("team") references "Team"("_id"),
foreign key ("organisation") references "Organisation"("_id")
);
Run Code Online (Sandbox Code Playgroud)
当我尝试upsert使用Sequelize以下代码时,它会抛出错误:
Service.upsert({ team, date, service, organisation, count }, { returning: true })
Run Code Online (Sandbox Code Playgroud)
错误是:
错误:重复的键值违反了唯一约束“Service_service_date_organization_key” …
我必须显示当前的服务器主机(在PHP中,但它不是很重要).我不知道我是哪个主持人.如果没有安全问题,我怎么能这样做?如果我使用$_SERVER['HTTP_HOST']它,它来自客户端,所以我不能相信这些信息(我认为它可以重写).
PS:我读过这篇文章:HTTP_HOST的可靠性如何?但我没有找到任何回应(也许我没有正确搜索......)
我创建了这样的迁移:
// ...
$table->foreign('a')->references('b')->on('c')->onDelete('cascade');
// ...
Run Code Online (Sandbox Code Playgroud)
我希望onDelete('cascade')在不破坏任何内容的情况下删除新迁移.我怎样才能做到这一点 ?
根据这个答案,如果我想更新enumMySQL 中的一个,我必须运行一个原始查询。但是对于 PostgreSQL,我不能使用这个查询,而且 Laravel 中 PostgreSQL 的枚举类型似乎很奇怪。
有没有办法在 postgreSQL 的迁移中更新枚举?
A是一个包含向量的结构B.A实现add_b将B实例添加到列表中的方法B.B包含一个闭包属性f.
如果我B在向量中添加一个add_b,那就没关系.如果我添加两个向量add_b,我得到一个错误说两个闭包是不同的.这是一个最小的例子:
// A struct...
struct A<F> {
b_vec: Vec<B<F>>, // A vector of B
}
// ...and its implementation
impl<F> A<F>
where
F: Fn(),
{
fn new() -> A<F> {
A { b_vec: Vec::new() }
}
fn add_b(&mut self, b: B<F>) {
self.b_vec.push(b);
}
}
// B struct...
struct B<F> {
f: F,
}
// ...and its implementation …Run Code Online (Sandbox Code Playgroud) 对于服务器到服务器对话,OAuth 是否比通过 HTTPS 的基本身份验证更安全?
我的意思是,如果我想使用 OAuth 从服务器 A 到服务器 B 执行一些 API 请求,我必须在服务器 A 上存储一些身份验证数据(密钥、秘密等)。然后使用这些身份验证数据,我可以拥有一个令牌并使用此令牌向服务器 B 发出请求。稍后使用相同的身份验证数据,我将拥有一个令牌密钥,并将能够使用此新令牌发出请求。
使用基本身份验证,我在服务器 A 上有一些身份验证数据(用户、密码)。我现在和以后都可以使用这些数据在 B 上执行请求。
现在假设 auth 数据被发现,因为服务器 A 上.conf有一个包含 auth 数据的文件,而这个文件被盗了。在这两种情况下(OAuth 和 Basic Auth),这都很糟糕,而且使用 OAuth 而不是 Basic Auth 没有任何好处。一个真实案例:我前几天刚刚创建了一个twitter bot(与OAuth的连接),如果发现配置信息,帐户被盗,attaquant现在和将来都可以使用这个bot。
那么,在使用 Oauth over Basic Auth 进行服务器到服务器请求(使用 HTTPS)时,是否还有另一个我不知道(或者我可能误解了某些东西)的原因?
在JSONB列上的postgreSQL中,我可以使用相同的(?)结果运行两个查询.
查询1:
SELECT * FROM a WHERE b->>'c' = 'lorem';
Run Code Online (Sandbox Code Playgroud)
查询2:
SELECT * FROM a WHERE b @> '{"c": "lorem"}';
Run Code Online (Sandbox Code Playgroud)
在性能和语义(也许一些其他的考虑,我不看这里),我应该用什么查询来搜索"从项目期限a哪里c是lorem"?
laravel ×5
php ×5
laravel-5 ×4
laravel-5.5 ×3
postgresql ×3
security ×2
apache ×1
eloquent ×1
foreign-keys ×1
host ×1
jsonb ×1
mysql ×1
node.js ×1
oauth ×1
oauth-2.0 ×1
rust ×1
sequelize.js ×1
server ×1
sql ×1