随着我的Rails应用程序的成熟,它变得越来越明显,它具有强大的数据仓库风格,缺少一个事实表来使一切都明确.
最重要的是,我刚刚阅读了Ruby Best Practices的第2章(设计美丽的API)和3(掌握动态工具包).
现在我想弄清楚如何最好地设计事实检索部分......
假设我有以下尺寸(应用中的现有模型):
...和一个很好的旧通用事实:
在某些方面,我很乐意得到一些建议:
:all?或者某些惯例是否适用?named_scopes来处理这个问题的经验?能够为每个感兴趣的维度链接一个明显的吸引力,但是如果我们达到7或8维度,它是否变得太笨重了?(我知道一个acts_as_fact插件被认为以某种形式存在(至少在RailsConf 2006中有一些小嗡嗡声)但我找不到任何代码或描述它如何起作用.)
版本:Rails,ActiveRecord 2.1.2,Oracle增强适配器1.2.0
编辑:我看了一下ActiveWarehouse并有一些保留意见: - 主要分支机构自08年11月以来没有承诺,自09年1月以来没有任何活动; - 教程可以追溯到2006年,被认为已经过时了,404对我来说; - 它似乎想要远离ActiveRecord - 我的应用程序的大部分将保留在AR中,我认为目前我想要一个AR解决方案.
所以我会避开那个,谢谢!
我是C#的相对新手而且完全卡住了!对于学校作业,我需要制作一个滑动拼图,其中编号的瓷砖将通过使用空格来重新排列,即
[1] [2] [3]
[4] [5] [6]
[7] [8] [ ]
Run Code Online (Sandbox Code Playgroud)
我不知道从哪里开始.
我试图将"信息"对象连接到许多"客户"(参见下面的代码)
当一个Information对象更新时,我想向连接到Information的每个Customer发送电子邮件.
但是,当我记录信号收到的sold_to字段时,我总是得到保存之前的数据.
我猜这是因为它的ManyToManyField和数据存储在一个单独的表中,但是在更新所有关系之后不应该调用post_save信号吗?
有人建议解决方案吗?
class Customer
name = models.CharField(max_length=200)
category = models.ManyToManyField('Category',symmetrical=False)
contact = models.EmailField()
class Information
name = models.CharField(max_length=200)
email = models.EmailField(max_length=200)
mod_date = models.DateTimeField(auto_now=True)
sold_to = models.ManyToManyField(Customer, null=True, blank=True)
def send_admin_email(sender, instance, signal, *args, **kwargs):
from myapp import settings
for cust in instance.sold_to.all():
settings.debug(cust.name)
post_save.connect(send_admin_email, sender=Information)
Run Code Online (Sandbox Code Playgroud)
编辑:#django中的apollo13提醒我:"相关项目(被保存为多对多关系的东西)不会像你发现的那样保存为模型的保存方法的一部分." - http://groups.google.com/group/django-users/msg/2b734c153537f970
但自2006年7月9日起,我真的希望有一个解决方案.
从 WebKit 打印时,它似乎会自动对输出强加一个收缩因子。有没有办法在打印时禁用收缩,最好不修改 WebKit 源代码?
我认为可以使用 Qt 4.6 主干并使用具有更长高度的 setFixedLayout 来诱使 WebKit 不缩小,但我还没有尝试过。也许有一种方法可以访问底层的 WebKit,这样我就可以做到这一点?
编辑:Chrome 通过扩展打印布局高度来处理这个问题。
http://src.chromium.org/viewvc/chrome/trunk/src/chrome/renderer/print_web_view_helper.cc?view=markup
这个代码用g ++编译好,但在用gcc编译时会抛出链接器错误.这些错误的原因是什么?
$ g++ traits2.cpp
$ gcc traits2.cpp
/tmp/ccI7CNCY.o: In function `__static_initialization_and_destruction_0(int, int)':
traits2.cpp:(.text+0x36): undefined reference to `std::ios_base::Init::Init()'
traits2.cpp:(.text+0x3b): undefined reference to `std::ios_base::Init::~Init()'
/tmp/ccI7CNCY.o:(.eh_frame+0x11): undefined reference to `__gxx_personality_v0'
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)
traits2.ccp文件包含上述带有emtpy main()函数的解决方案:
#include <iostream>
using namespace std;
// A default Traits class has no information
template<class T> struct Traits
{
};
// A convenient way to get the Traits of the type of a given value without
// …Run Code Online (Sandbox Code Playgroud) 你能得到2个相同底层类型的单例实例吗?
这在春天显然是微不足道的,因为它基于你附加范围的命名实例,但我看不到guice中的等价物,它是关于实现类的绑定类型.请注意,我不希望必须绑定到实例,因为有问题的实例被guice注入了其他依赖项.
到目前为止一切都那么好......在asp中我们有HttpUtility.UrlEncode
在vb.net中是否有任何equivelant?
我试着导入system.web但没有任何运气......
我们在数据库中有一个phonenumber字段,我想做一个简单的查询查询,如:
SELECT * FROM TABLE WHERE Phonenumber = '555123456'
Run Code Online (Sandbox Code Playgroud)
但由于phonenumbers是由用户输入的并且没有标准化,我们并不真正知道它们的样子.
可能:
要么
要么
或者完全不同的东西.
唯一确定的是所有给定的数字应该以正确的顺序存在.是否可以构建一个查询?
我正在寻找一个java库或一些帮助来编写我自己的插值函数.那就是我有两个双打数组,这两个数组可能有不同的大小,但是是有序的.我需要能够估计中间值,并插入以使两个数组的大小相同.事实上,插值中出现的点总数是2个数组大小减去1的总和.但是,每个数组的范围必须保持不变,因此不需要外推.
例如.a1 = [1,4,9,16,25,36]和a2 = [6,9,14,30]
结果可能是例如.
a1 = [1,2.25,5,2.65,9,12.25,16,25,36]和a2 = [6,6.5625,7.25,9,10.2625,11.25,14,25.25,30]
f(x) = x^2 and g(x) = x^2 + 5然而,这些例子很容易就是任何多项式 - 关键是要能够很好地估计/近似数据集中的函数,以提供足够的插值.这里的x值只是输入数组的索引.在输出中,只有y值很重要.
我是OSGi的新手.我的目标是使用config admin创建一个结构,因此您可以输入一个配置,该配置将在重新启动服务器后重复使用.
虽然我已经阅读了api并尝试了一些示例,但我认为默认情况下会包含此功能.
我的问题是:这是否可行,如果是的话:我有什么考虑才能获得这项功能?
PS.我正在使用Equinox
欢呼克里斯