我有一个包含以下表和关系的数据库:
广告1-1汽车m-1模型m-1品牌
如果我想要检索广告,我可以简单地使用:
Advert::find(1);
Run Code Online (Sandbox Code Playgroud)
如果我想要汽车的细节,我可以使用:
Advert::find(1)->with('Car');
Run Code Online (Sandbox Code Playgroud)
但是,如果我还想要模型的细节(跟随与Car的关系),语法是什么,以下不起作用:
Advert::find(1)->with('Car')->with('Model');
Run Code Online (Sandbox Code Playgroud)
非常感谢
我有两个类的下一个代码:
public class Object
{
public int ObjectID { get; set; }
public int Object2ID { get; set; }
public virtual Object2 Object2 { get; set; }
}
public class Object2
{
public int Object2ID { get; set; }
public virtual ICollection<Object> Objects { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我知道使用Entity Framework,这将创建一对多关系,但我想知道的是如何将其转换为零对多关系.
我是Entity Framework的新手,我找不到任何直接的答案.
我正在开发Java桌面应用程序并使用JPA进行持久化.我有一个问题如下:
我有两个实体:
国家/地区具有以下属性:
City具有以下属性:
现在因为在两个不同的国家/地区可以有两个同名的城市,因此数据库中的City表的primaryKey是由CityName和组成的复合主键CountryName.
现在的问题是如何实现的主键
City作为一个Entity在Java中
@Entity
public class Country implements Serializable {
private String countryName;
@Id
public String getCountryName() {
return this.countryName;
}
}
@Entity
public class City implements Serializable {
private CityPK cityPK;
private Country country;
@EmbeddedId
public CityPK getCityPK() {
return this.cityPK;
}
}
@Embeddable
public class CityPK implements Serializable {
public String cityName;
public String countryName;
}
Run Code Online (Sandbox Code Playgroud)
现在我们知道上面代码中的from Country和Cityis OneToMany之间的关系,我 …
我在SO内搜索但是在处理关系时我没有找到任何提高删除核心数据中托管对象的性能的建议.
场景非常简单.
如您所见,有三种不同的实体.每个实体与下一个实体级联.例如,FirstLevel有一个叫做关系secondLevels到SecondLevel.从删除规则FirstLevel来SecondLevel为级联而从删除规则SecondLevel来FirstLevel是废掉.在SecondLevel和之间应用相同的规则ThirdLevel.
当我想删除整个图形时,我执行如下方法:
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"FirstLevel" inManagedObjectContext:context];
[fetchRequest setEntity:entity];
NSError *error = nil;
NSArray *items = [context executeFetchRequest:fetchRequest error:&error];
[fetchRequest release];
// delete roots object and let Core Data to do the rest...
for (NSManagedObject *managedObject in items) {
[context deleteObject:managedObject];
}
Run Code Online (Sandbox Code Playgroud)
利用Cascade规则删除图表.这适用于少数对象,但会降低许多对象的性能.另外,我认为(但我不太确定)这种类型的删除会执行大量的磁盘往返,我错了吗?
所以,我的问题如下:如何在不利用Cascade规则和提升性能的情况下删除图形,同时保持图形一致性?
先感谢您. …
performance core-data cascading-deletes object-relationships ios
首先举例讨论:
class Foo
{
// Attributes:
int attribute1, attribute2;
// Methods:
virtual void Foo1()
{ /* With or without Implementation */ }
virtual void Foo2()
{ /* Also with or without Implementation */ }
};
class ExactDuplicate: Foo // No New Attributes or Methods
{
virtual void Foo1()
{ /* A new Implementation */ }
// Also there might be new Implementations to other methods
};
class ExtraMethods: Foo // Having New Methods
{
virtual void Foo3()
{ /* Implementation …Run Code Online (Sandbox Code Playgroud) 我正在建立一个博客网站,并有关于类别和帖子的模型。帖子与类别之间存在多对多关系。
class Post(models.Model):
categories = models.ManyToManyField(Category)
Run Code Online (Sandbox Code Playgroud)
除了在模板的类别列表中我只想加载实际有帖子的类别之外,一切都正常。
如果一个类别是空的,我不想显示它,我已经尝试在 Category to Post 中定义一个关系,以允许我使用类似{{ if category.posts }}. 目前使用类别中的另一个多对多字段目前在管理中给了我一个额外的字段,我并不真正想要或觉得需要它。
如何最好地驾驭这种关系,或创造一种合适的关系?
干杯凯夫
上下文:
我有一个实体书.一本书可以有一个或多个描述.描述是价值对象.
问题:
描述可能比另一描述更具体.例如,如果描述包含书籍的内容以及封面的外观,则它比仅讨论封面外观的描述更具体.我不知道如何建模以及如何让存储库保存它.了解这些关系并不是本书和书籍描述的责任.其他一些对象可以处理此问题,然后请求存储库保存关系.但是BookRepository.addMoreSpecificDescription(Description,MoreSpecificDescription)似乎很难保存.
在DDD中如何处理这样的事情?
domain-driven-design repository value-objects object-relationships
c# ×1
class ×1
class-design ×1
core-data ×1
django ×1
eloquent ×1
entity ×1
ios ×1
java ×1
jpa ×1
laravel ×1
oop ×1
performance ×1
php ×1
repository ×1