这是我在eloquent
尝试做的一个奇怪的实现。
所以这里的概念是:
我正在尝试为relation
和product
创建动态product instance
。
Category
有多个products
。 Products
有多种类型。我决定创建多个product types
,具体取决于产品的用途。
例如:可以有Food
和Clothes
。食物是一个不同的类别,具有完全不同的属性。我还需要其他一些东西来区分食物和衣服。
我显然有两个不同的表格,但有一个类别表格product type slug
可以区分哪个类别product
。
有一个Product
类具有一般描述,slugs等一般产品所具有的一切。食品和衣服类是这些产品的例子,具有特定实例的具体细节
我已定义relation
product
和product instance
这样的function instance( $productInstance ) {
return $this->hasMany( get_class( $productInstance) );
}
。
$product->instance( $instance )->get()
我可以得到这样的关系。 relation
;根据我在关系中传递的类实例,给出了我需要的确切multiple relations
。
这非常顺利。在我需要加载$category->with(['subCategory.products' => function( $q ) use ($productModel ) {
$q->with( 'instance' );
}])->get();
这就是我被困住的地方。
我无法将带有函数的实例中的模型传递给延迟加载或加载函数到延迟加载关系。此功能不作为关系
instanceModel
我无法通过relation
课程来告诉table
要取modelInstance
的内容。
我是否有办法通过relation
以便我可以将subCategory
加载到(function(angular) {
'use strict';
angular.module('docsTemplateUrlDirective', [])
.controller('Controller', ['$scope', '$compile', function($scope, $compile) {
$scope.names=[{name:'1', template:'tmpl-1', show:false},
{name:'2', template:'tmpl-2', show:false},
{name:'3', template:'tmpl-3', show:false}]
$scope.show = '0';
$scope.showdiv = function(x){
$scope.show = x.name;
};
}]);
})(window.angular);
或者这个的不同实现?
任何建议??