- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
问题半解决/缩小范围。阅读编辑/更新。
所以,我有一个博客应用程序...在该博客应用程序中我有两条路线... blog.index
和blog.single
。该索引列出了博客文章以及指向 blog.single
的链接。查看并传递 slug 来识别特定的帖子。我附上了一个有关该问题的 YouTube 视频并进行了旁白...我以前从未遇到过这个问题。
基本上,如果我单击索引页面上的“阅读更多”按钮,只有一些帖子会正确显示在单个页面上...但是有些帖子会给我以下错误。
Trying to get property of non-object (View: /home/vagrant/sites/blog/resources/views/blog/single.blade.php)
这是我的代码 single.blade.php
:
@extends('main')
@section('title', $post->title)
@section('content')
<div class="row">
<div class="col-md-8 col-md-offset-2">
<h1>{{ $post->title }}</h1>
<h5>Published: {{ date('M j, Y', strtotime($post->created_at)) }}</h5>
<p>{{ $post->body }}</p>
<hr>
<p>Posted In: {{ $post->category->name }}</p>
</div>
</div>
@endsection
我刚刚添加了一个新的评论迁移和 Controller ,并且我已将 Post 模型编辑为:
namespace App;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{
// Access to category model
public function category() {
return $this->belongsTo('App\Category');
}
// Access to Tags Model
public function tags() {
return $this->belongsToMany('App\Tag');
}
// Access to Comments Model
public function comments() {
return $this->hasMany('App\Comment');
}
}
这是我的博客 Controller 代码:
use Illuminate\Http\Request;
use App\Post;
class BlogController extends Controller
{
// Get the Index of Blog Posts
public function getIndex() {
// Grab all of the posts from the DB
$posts = Post::orderBy('created_at', 'desc')->paginate(10);
// Return the Index View
return view('blog.index')->withPosts($posts);
}
// Get Single Post
public function getSingle($slug) {
// Grab the post via slug
$post = Post::where('slug', '=', $slug)->first();
// Return the Via Pass in Post Object
return view('blog.single')->withPost($post);
}
}
在我的 YouTube 视频中,我向您简要介绍了数据库和代码。时长约 6 分钟。
Youtube 视频:https://youtu.be/F78QzqQ4rts
我在这里关注的 YouTube 教程:https://www.youtube.com/watch?v=z-KyDpG8j34&index=47&list=PLwAKR305CRO-Q90J---jXVzbOd4CDRbVx
编辑/更新:
所以我将问题范围缩小到这行代码...有时有效,有时又无效...
<p>Posted In: {{ $post->category->name }}</p>
所以,我心想,让我们看一下帖子模型,看看类别是否定义正确,以便我们可以访问它。
这是我的类别帖子模型...
// Access to category model
public function category() {
return $this->belongsTo('App\Category');
}
一切看起来都不错,所以我直接使用 SQL Pro 进入数据库,查看帖子中哪些类别有效,以及帖子中哪些类别无效。这是由“posts”表中的“category_id”列定义的。
我注意到有效的帖子使用了类别 ID“2”。其他不起作用的帖子有一个“其他”“2”类别。所以我转到我的“类别”表,查看是否还有除 2 之外的类别。没有。
不知何故,在删除类别时,我并没有删除帖子表中的关联。我不知道如何在从类别表中删除类别后同时清除帖子表中对类别 ID 的所有引用。
这是我用于创建类别表的迁移函数
public function up()
{
Schema::create('categories', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->timestamps();
});
}
这是用于将category_id列添加到“posts”表的up函数。
Schema::table('posts', function (Blueprint $table) {
// Add category id to posts table
$table->integer('category_id')->nullable()->after('slug')->unsigned();
});
这是类别 Controller 中类别的销毁函数。
public function destroy($id)
{
$category = Category::find($id);
$category->delete();
Session::flash('success', 'Deleted the Category');
return redirect()->route('categories.index');
}
因此,有了这些信息,您应该能够帮助...在删除类别表中的类别后,如何消除帖子表中的关联?
这是一个 YouTube 视频,解释了缩小范围的问题:
最佳答案
$table->integer('category_id')->nullable()->after('slug')->unsigned();
此迁移表明您的帖子可能属于类别,也可能不属于类别,因为类别_id 是一个可为空的字段。
因此 {{ $post->category->name }}
并不总是有效,因为它们可能是不属于任何类别的某些帖子。
解决这个问题的两种方法:
{{ $post->category->name }}
更改为 {{ $post->category_id ? $post->类别->名称:""}}
至于如何去掉posts表中的关联,有2种选择:
$category->posts()->delete();
$category->posts()->update(['category_id' => null]);
关于php - YouTube Vid Attached - 在 Laravel 中删除 'posts' 表中的类别后,如何从 'categories' 表中删除关联的 Category_id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45785853/
我正在尝试根据 magento 中的产品 ID 在类别路径中获取类别名称。 假设我的产品 ID = 1,并且我在其中定义了 category5 (id = 5),并且我得到了类似 2/3/5 的类别路
我试图弄清楚如何通过 AngularJS 中的 $http.get() 方法发送数组。这就是我正在做的事情: $http.get('/events.json', {params: {category_
我在产品类别和子类别网站上工作,可以创建的子类别数量是无限的,这意味着我们可以自己拥有子类别的子类别。一切正常,我只是有一个问题:假设“PRODUCT 1”属于“SUB SUB CATEGORY 1”
在 stackoverflow 上所有这些 mod 重写主题之后,我仍然没有找到我的问题的答案。我有一个顶级站点,基本上我想做的就是将 /index.php?method=in&cat=Half+Li
我正在为我的未婚夫构建一个 Rails 应用程序来进行一些非常基本的库存跟踪。我们已经经历了几种选择,因为无论如何我都想学习 Rails,所以我们想出了为什么不。无论如何,如果我可以将一些产品按这样分
我需要在 Prestashop 主题的类别页面中列出同级类别。目前它确实显示子类别(如果有)但不兄弟类别。 如果能快速回答,我们将不胜感激!谢谢。 最佳答案 首先我会在/override/contro
关闭。这个问题需要details or clarity .它目前不接受答案。 想改进这个问题吗? 通过 editing this post 添加细节并澄清问题. 关闭 7 年前。 Improve
我正在使用以下维基媒体 API 列出具有特定类别的所有页面:https://www.mediawiki.org/wiki/API:Categorymembers 例如https://en.wikipe
我应该如何命名用户类别和文章类别的表和模型?我有两个表,一个是用户,另一个是文章。我想对它们进行分类,以便我可以仅调用新闻文章或仅使用公司类别中的用户。所以我需要这些模型/表之间的关系。 我考虑过为文
在 UI Router 中实现此类功能的最佳方法是什么? /category/product /category/category/product 例如: /telephones/apple/ipho
我有以下 SQL 架构: tbl_产品: - ID - id_category tbl_categories: - ID - id_parent tbl_products_categories:- i
我需要创建一个对用户隐藏的应用程序。但在它被隐藏之前,我需要在 GUI 上设置一些配置,然后我必须从应用程序列表中隐藏图标。如果我删除 应用程序未显示在应用程序列表中。但是我的配置 GUI 也没有显
我正在尝试派生一个 MySQL 查询来转换这个: product | sold milk | 6 milk | 4 bread | 3 bread | 2 bread
我正在使用 ^category/|categories/$。 为什么 ^categor[y|ies]/$ 不起作用? 最佳答案 你的正则表达式应该是, ^categor(?:y|ies)/$ 使用非捕
据我所知,有两种情况会导致以下错误: ld: warning: instance method 'resetAudioSystem' in category from /opentok-ios-sdk
我希望我的问题很清楚,但我会尝试再解释一下。 在我的数据库中,我有两列名为“category”和“images”。在我的表单中,人们需要添加一个类别,以便我的 PHP 向 MySQL 添加一个新条目。
我在 pandas 中有以下 df 数据框: weekday venta_total_cy 0 Viernes 5.430211e+09 1 Lunes 3.4255
我目前陷入困境。场景是这样的。我有可能与多个类别相关联的产品。数据结构如下图: Products Table: product_id name 1 Lemon 2
我使用 openActivity()使用 Kotlin 在 Android Studio 3.1.2 中创建首选项 UI。 看来代码A和代码B都可以正常工作。 android.intent.categ
我有一个 Postgres 数据库。我正在尝试根据表 2 中表达的条件删除表 1 中的行。 表 1:id, object_id, time, action_type 表 2:object_id, ob
我是一名优秀的程序员,十分优秀!