我有 appsettings.json 设置来自动创建日志表"autoCreateSqlTable": true
但是,我检查了 SQL,但找不到该表。我似乎无法找到导致它无法创建和记录信息的原因。
程序.cs:
public class Program
{
public static void Main(string[] args)
{
IConfigurationRoot configuration = new ConfigurationBuilder()
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.Build();
Log.Logger = new LoggerConfiguration()
.ReadFrom.Configuration(configuration)
.CreateLogger();
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>().UseSerilog();
});
}
Run Code Online (Sandbox Code Playgroud)
应用程序设置.json:
"Serilog": {
"MinimumLevel": "Information",
"WriteTo": [
{
"Name": "MSSqlServer",
"Args": {
"connectionString": "****",
"tableName": "Log",
"autoCreateSqlTable": true
}
}
]
},
Run Code Online (Sandbox Code Playgroud) 当我输入“php artisan migrate”时,出现以下错误:
BadMethodCallException:方法 Illuminate\Database\Schema\Blueprint::password 不存在。
在 C:\xampp\htdocs\laravellab1\vendor\laravel\framework\src\Illuminate\Support\Traits\Macroable.php:98 94| */ 95| 96 | 公共函数 __call($方法, $参数) {97| if (!static::hasMacro($method)) {
98| throw new BadMethodCallException(sprintf( 99| '方法 %s::%s 不存在。', static::class, $method 100|
)); 101| } 102|
注册用户可以创建帖子,并且通过该帖子,用户可以上传多张图片。但是我遇到的问题是它无法正确验证文件上传。我用了:
mimes:jpg,jpeg,png
Run Code Online (Sandbox Code Playgroud)
但是,当我上传这些类型的图像时,它说它们不是。在实现多个图像上传之前,我上传了 1 个图像,这很好,但是当我上传多个图像时,它就破坏了。
这是我用于创建帖子的 postController.php 方法:
public function postCreatePost(Request $request){
//validates each field
$this->validate($request, [
'title' => 'required|max:100',
'type' => 'required',
'subtype' => 'required|max:100',
'date' => 'required|date',
'venue' => 'required|max:100',
'body' => 'required',
'cover_image' => 'required|mimes:jpeg,jpg,png'
]);
//adds each field sent in the request to the relevant post table column
$post = new Post();
$post->title = $request['title'];
$post->type = $request['type'];
$post->subtype = $request['subtype'];
$post->date = $request['date'];
$post->venue = $request['venue'];
$post->body = $request['body'];
$message = 'There was an error'; …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个密码字段,允许用户单击眼睛图标来查看或隐藏其密码。然而,除此之外,我想当用户单击字段外部时自动隐藏密码。这需要点击和模糊事件。问题是模糊事件在单击事件之前运行,并在我单击眼睛图标时运行。这会导致该字段切换两次,因为它在模糊事件块中运行,然后在单击事件块中运行。
我基本上需要它来允许我通过单击眼睛图标进行切换,并在退出字段时将字段设置回密码类型。我尝试使用 onmousedown 但它的行为非常奇怪,它仅在我单步执行开发工具时才有效。
function togglePassword(element) {
$(element).toggleClass("fa-eye fa-eye-slash");
$(element).siblings("input").each(function() {
if ($(element).hasClass('fa-eye-slash')) {
$(this).attr('type', 'text');
$(this).focus();
} else if ($(element).hasClass('fa-eye')) {
$(this).attr('type', 'password');
}
});
}
function toggleWhenExiting(element) {
console.log("focus toggle");
$(element).siblings("span").each(function() {
if ($(this).hasClass('fa-eye-slash')) {
$(element).attr('type', 'password');
$(this).toggleClass("fa-eye fa-eye-slash");
}
});
}Run Code Online (Sandbox Code Playgroud)
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css" integrity="sha512-Fo3rlrZj/k7ujTnHg4CGR2D7kSs0v4LLanw2qksYuRlEzO+tcaEPQogQ0KaoGN26/zrn20ImR1DfuLWnOo7aBA==" crossorigin="anonymous" referrerpolicy="no-referrer" />
<input type="password" id="passwordFirst" class="form-control" onblur="toggleWhenExiting(this)">
<span class="fas fa-eye" id="togglePassword" onclick="togglePassword(this)"></span>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>Run Code Online (Sandbox Code Playgroud)
在我的网站上,注册用户可以创建帖子并喜欢其他人的帖子。在显示所有帖子时,我可以选择用户可以按标题、日期和喜欢计数排序。我已经完成了标题和日期,但我在按喜欢计数排序时遇到了麻烦。在我的系统中实现此功能的最佳方法是什么。
这是我用于检索和排序帖子的帖子控制器方法:
public function getEvents(Request $request){
if($request['sort'] == "created_at"){
$posts = Post::orderBy('created_at', 'desc')->get();
}
elseif($request['sort'] == "title"){
$posts = Post::orderBy('title', 'desc')->get();
}
elseif($request['sort'] == "like"){
//how would I go about ordering by like count here
}
return view ('eventspage', ['posts' => $posts]);
}
Run Code Online (Sandbox Code Playgroud)
这是我的用户选择订购内容的视图:
<form action="{{ route('events') }}">
<select name="sort" onchange="this.form.submit()" class="form-control">
<option value="">Sort By</option>
<option value="created_at">Date</option>
<option value="title">Title</option>
<option value="like">Likes</option>
<input type="hidden" name="formName" value="sort">
</select>
</form>
Run Code Online (Sandbox Code Playgroud) html ×3
laravel ×3
php ×3
asp.net-core ×1
c# ×1
database ×1
eloquent ×1
javascript ×1
jquery ×1
serilog ×1