我将研究一个将使用EAV结构来存储对象数据的系统.模型本身将具有一些预定义的属性(坐标和日期/时间戳),即:
其余属性将由用户动态创建,并作为行添加到属性表中.这些行将被旋转并用作列以与值表对齐(不确定这是否需要解释,但更安全而不是抱歉).
属性关系的对象(或实体)是一对多的.
值与属性的属性是一对多关系.
我是Eloquent/Laravel的新手,但我已经阅读了关系文档并看到有一对多关系的功能,但是,我不清楚如何引用EAV中的所有数据(似乎更适合于RDBMS ).它会是这样的(请记住这是一个粗略的例子)?
class UserObject extends Eloquent {
public function object_data()
{
return $this->hasMany(attributes_data);
}
public function attributes_data()
{
return $this->hasMany('Values');
}
}
Run Code Online (Sandbox Code Playgroud)
基本上,我的问题是:
在检索与EAV相关的所有数据时,是否有一种可接受的(或正确的)方法来设计/编写模型?如果是这样,你能指出我的Eloquent/EAV方法的一些文档或教程吗?
一些想法:
我的想法是我需要为EAV的每个组件创建3个类(即一个用于实体组件数据,一个用于属性数据,一个用于值数据).
谢谢.
我一直在尝试找到一种方法将.py源文件转换为.cpp源码(作为手动操作的节省时间).我之前从未使用过python,希望能够快速转换它,并清理转换器可能做不好的任何代码.
到目前为止,我在google搜索时发现的一些选项似乎是:nuitka,cython和pypy/rpython.
但是,我读过的文档似乎只生成可执行文件,而不是实际的源代码.
此时,我找到了py2c,但似乎无法找到有关如何使用它的任何文档.另外,根据维基上发布的路线图判断,它似乎不是成品,因此我对它的可靠性表示怀疑.
如果你能提供其他资料来说明如何实现这一目标,或者对我在上述可能性上可能遗漏的事情有所了解,我们将不胜感激.否则,我将简单地手动转换它.