这件事让我抓狂。
我已经设置了ORM。当我运行ORMReload()时,我会得到以下错误。
无法为CFC产品中的关系属性类别加载目标CFC productCategories。
Application.cfc ORM Config
this.ormEnabled = true;
this.ormsettings = {
cfclocation = "_model"
};products.cfc
component persistent="true" table="products" {
property name="id" fieldtype="id";
property name="productcode" ormtype="string";
property name="title" ormtype="string";
property name="introduction" ormtype="text";
property name="description" ormtype="text";
property name="image1" ormtype="string";
property name="image2" ormtype="string";
property name="image3" ormtype="string";
property name="deletedAt" ormtype="date";
property name="category" fieldtype="many-to-one" cfc="productCategories" fkcolumn="categoryid";
//init()
public function init(){
return this;
}
//getByID()
public function getByID(required id=""){
return entityLoadByPK("products",'18');
}
}productCategories.cfc
component persistent="true" table="productCategories" {
property name="id" fieldtype="id";
property name="description" ormtype="string";
property name="products" fieldtype="one-to-many" cfc="products" fkcolumn="categoryid";
//init()
public function init(){
return this;
}
public function get(){
return entityload("productCategories");
}
}我可以通过在cfc参数(例如cfc="_model.products" )中设置完整路径来克服这个错误,但随后我会得到以下错误。
表产品中的关联引用未映射的类:
两种氟氯化碳都在同一个文件夹中。我尝试过重新启动CF Server。把头发拔出来。任何建议都非常感谢。
发布于 2012-03-15 13:21:56
谢谢FLepage和CfSimplicity的建议。
我最终解决了文件夹的权限问题。我把整个应用程序转移到另一个开发服务器,它工作得很好(更多的头发拉)。最终检查了有问题的版本的文件夹的权限,一旦我重置权限以授予所有的蜜罐访问权限,它就能正常工作。
我将文件从PC复制到Mac,所以OSX在复制文件/文件夹时一定对文件夹权限做了一些操作。一点都不好玩。
再次感谢!
发布于 2012-03-13 13:48:02
每次更改模型时重新加载ORM。检查所有对象名称和关系名称(请敏感地检查大小写)。
使用"_model“检查,不使用CFC名称。
错误消息指示未映射的类,因此一个或多个名称是错误的。或者hibernate不存在(需要重新加载)。
发布于 2012-03-15 08:56:01
尝试将Application.cfc中的cfclocation设置更改为绝对路径而不是相对路径:
this.ormEnabled = true;
this.ormsettings = {
cfclocation = ExpandPath( "_model" )
};https://stackoverflow.com/questions/9684736
复制相似问题