我对拉威尔是个新手,所以我想这是个新手问题。基本上,我尝试通过静态all()函数检索数据库数据。但不知何故,我的结果模型实例只填充属性数组中的数据,但所有模型属性都为null。
我有一条简单的路线
Route::get('/posts', function () {
$posts = App\Models\Post::all();
ddd($posts[0]);
return view('posts', [
'posts' => $posts,
]);
});
还有一个简单的模型
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{
use HasFactory;
public $id;
public $title;
public $excerpt;
public $body;
public $published_at;
public $category_id;
protected $fillable = [
'title',
'excerpt',
'body',
'published_at',
'category_id',
];
protected $guarded = ['id'];
public function category() {
return $this->belongsTo(Category::class);
}
}
这是ddd()返回的结果
App\Models\Post {#1225 ▼
+id: null
+title: null
+excerpt: null
+body: null
+published_at: null
+category_id: null
#fillable: array:5 [▶]
#guarded: array:1 [▶]
#connection: "mysql"
#table: "posts"
#primaryKey: "id"
#keyType: "int"
+incrementing: true
#with: []
#withCount: []
+preventsLazyLoading: false
#perPage: 15
+exists: true
+wasRecentlyCreated: false
#escapeWhenCastingToString: false
#attributes: array:8 [▼
"id" => 1
"title" => "Dedrick Ebert DDS"
"excerpt" => "Possimus sit animi enim error. Omnis maxime ducimus nesciunt omnis quibusdam."
"body" => "Neque est aliquid est placeat. Eaque nihil nobis nobis nostrum consequuntur. Omnis quis aut ipsum quo. Facilis velit ducimus quisquam consequatur vitae quidem. ▶"
"published_at" => "2003-10-06"
"category_id" => 7
"created_at" => "2021-12-07 20:30:15"
"updated_at" => "2021-12-07 20:30:15"
]
#original: array:8 [▶]
#changes: []
#casts: []
#classCastCache: []
#dates: []
#dateFormat: null
#appends: []
#dispatchesEvents: []
#observables: []
#relations: []
#touches: []
+timestamps: true
#hidden: []
#visible: []
}
有人能解释一下我在这里遗漏了什么吗?
多谢指点
问题内容: 我在这里有一个复杂的json 我正在尝试在我的模型类“ ChromeJsonModel”中映射它,例如: 但是我收到以下错误。 我为什么会在哪里出问题? 问题答案: 您拥有非常复杂的有效负载,其中相同的属性可能具有一个或多个对象。默认情况下不会处理这种情况,因此我们需要为此类属性实现自定义反序列化器。下面我创建了代表您的有效负载的简单模型: 如您所见,它是-es属性。让我们为这些属性实
我需要将源类中的字段值映射到字段属性。我可以使用Mapstruct使用@mapper注释的'expression'参数来完成 有没有其他方法可以不使用“表达式”来进行映射?
在对这个话题进行了大量的测试和研究之后,我无法完全解决我的问题。我正在springboot应用程序中使用modelmapper进行实体/DTO映射。我正在尝试配置modelmapper,将一个集合映射到一个简单的DTO对象。我已经创建了一个自定义转换器,它正在按预期工作: 我现在的问题是将此转换器应用于所有“集合”= 如果我直接在模型映射器中添加转换器,它就是不工作。 你对此有什么提示或解决办法吗
我还在学习ReactJS。我正在挑战自己写一个非常基本的待办事项应用程序(就像一个人一样),我有一个问题,调用onhtml函数。 这里的问题是不能调用,因为它不在render函数的返回调用中 要从map函数内部访问handleClick,我需要做什么?
问题内容: 在学习Angular 2时,我使用了一个可观察的对象通过API来获取一些数据。像这样: 我的帖子模型看起来是这样的: 我面临的问题是地图运算符对Post模型不做任何事情。例如,我尝试为img值设置默认值,但在视图post.img中什么也不显示。我什至用其他模型(Message [])更改了Post [],但行为没有改变。有人可以解释这种行为吗? 问题答案: 当我想在模板中使用计算属性时
问题内容: 我的PostgreSQL数据库(9.2)中有一个表,其中的列类型为JSON。我很难将此列映射到“ JPA2实体”字段类型。 我尝试使用String,但是当我保存实体时,出现一个异常,即它无法将字符转换为JSON。 处理JSON列时使用的正确值类型是什么? 一个简单的解决方法是定义一个文本列。 问题答案: 请参阅PgJDBC错误#265。 PostgreSQL过于严格,对数据类型转换非常