小编Mik*_*use的帖子

考虑到长期使用,Ruport vs. Prawn

我想在我的Rails应用程序中添加报告功能,现在我正在努力使用哪种报告软件来创建我的PDF文档.

到目前为止,我很确定RuportPrawn是最好的方式.

在对它们进行实验后,我发现它们都非常强大且非常普遍,但它们也有不同的特点,我担心从长远来看,我可能会做出错误的选择.

Ruport和Prawn如何在大型复杂的应用程序中相互比较长期使用?

  • 可维护性?生成代码的报告会成倍增长吗?代码是否容易变脆?
  • 可用性?图书馆还会在几年内积极维护吗?(ruport-util似乎有些过时......)
  • 可定制性?使用相同的代码库为不同的客户端生成不同的布局有多容易?
  • 最重要的是:在做出选择之前我应该​​考虑的任何其他方面我都不知道吗?

先感谢您!

ruby reporting ruby-on-rails prawn ruport

6
推荐指数
0
解决办法
2486
查看次数

在Rails/ActiveRecord和Legacy Schema中避免"单表继承"

我正在尝试与具有名为"type"的列的Legacy表集成.

Rails将"巧妙地"假设每当我们在表中有一个'type'列时,它就会尝试使用Single Table Inheritance.

反正有没有避免这个?

(我无法重命名该列).

activerecord ruby-on-rails

6
推荐指数
1
解决办法
908
查看次数

如何轻松地将Excel电子表格插入网页?

我想将Excel电子表格插入到网页中,但希望同时更改某些数据以使其更加用户友好.

这很容易吗?

谢谢您的帮助.

html excel

6
推荐指数
1
解决办法
2万
查看次数

创建封装Generic Collection的类有缺点吗?

我的(C#3.0 .NET 3.5)应用程序的一部分需要维护几个字符串列表.我毫不奇怪地宣布它们,List<string>并且一切正常,这很好.

这些中的字符串List实际上(并且始终)是基金ID.我想知道更明确的意图是否更具意图,例如:

public class FundIdList : List<string> { }
Run Code Online (Sandbox Code Playgroud)

......这也有效.从技术上还是哲学上来说,这有什么明显的缺点吗?

.net c# oop generics collections

6
推荐指数
1
解决办法
300
查看次数

我如何识别未被垃圾收集的不需要的.NET对象?

我的(C#.NET 4.0)应用程序运行一段时间,根据从SQLite数据库获取的价格变化更新模拟帐户.

我在任何特定日期都需要的是当前状态的帐户和最新价格.我希望垃圾收集器能够在相当均匀的龙骨上保持内存使用率:我所看到的是工作集和私有内存(如报告所示System.Diagnostics.GetCurrentProcess())的稳定增长,以及GC.GetTotalMemory(true):在这种情况下每天约300K.不可避免地,整个事情在大约12个模拟年后崩溃,此时内存使用量增加了大约1GB.

内存使用率或多或少线性增加(如果我GC.Collect()在每天结束时强制执行一个非常顺利).

我推断一些对象在某种程度上不是垃圾收集的,即使我认为它们不再需要它们并且预期它们会在正常的退潮和执行流程中被清理干净.

我可以尝试确定哪些地方无意中造成了这种情况?

我已经下载并运行了CLRProfiler - 它会花费周末的最佳时间来消化文档,但并不能保证它能够提供帮助.

我正在研究这个问题中的参考文献.一般来说,我知道什么样的情况可能导致问题,我更感兴趣的是看看是否有更快的方法来识别具体细节而不花费宝贵的时间来完成我的代码勾选引用...

注意:问题似乎与事件无关,并且不涉及图形组件.

.net c# garbage-collection memory-leaks

6
推荐指数
1
解决办法
659
查看次数

多列Excel范围中的最长列(在单个公式中)?

在不同列可能具有不同数量的值的范围内(但列中的序列中不会有间隙),我想知道最长列的长度.为了要求更高,我想在一个单一的公式中.

所以考虑到这样的范围:

      |  A   B   C   D
   ---+---+---+---+---
    1 |  1   2   3   4
    2 |  2   9   5   6
    3 |      5   5
    4 |          4
    5 |
Run Code Online (Sandbox Code Playgroud)

..我想要的答案是4.

在这种情况下有效的东西是

=MAX(COUNT(A1:A999),COUNT(B1:B999),COUNT(C1:C999),Count(D1:D999))
Run Code Online (Sandbox Code Playgroud)

但它是(a)丑陋和(b)不灵活 - 不适合可能添加列的情况.

我试过这样的东西,希望有一个数组给出一组列数(希望包围MAX()它):

{=COUNT(OFFSET(A1,0,COLUMN(A1:D1)-COLUMN(A1),999,1))}
Run Code Online (Sandbox Code Playgroud)

..但它只提供一个单元格,它似乎总是第一列的计数.

我知道这可以很容易地在VBA中解决,但出于几个原因(尤其是好奇心),我想看看它是否可以在单个(可能是数组)公式中解决.

excel excel-formula

6
推荐指数
1
解决办法
871
查看次数

使用redirect_to将模型属性传递给Rails视图

我正在尝试将模型属性传递给视图,之后成功地将其设置为控制器中的操作内的新值.但是这个变量在到达视图时总是为零,所以我不能用它来有条件地显示东西.我应该补充一点,这个属性不是数据库中的一个字段.我错过了什么/做错了什么?

这是我模型中的代码:

attr_accessor :mode

#getter
def mode
 @mode
end

#setter
def mode=(val)
 @mode = val
end
Run Code Online (Sandbox Code Playgroud)

......在控制器中:

@report.mode = "t"
redirect_to edit_report_path(@report)
Run Code Online (Sandbox Code Playgroud)

......在我看来:

<%= build_report(@report.mode) %>
Run Code Online (Sandbox Code Playgroud)

...但是这个辅助方法永远不会得到我刚刚在控制器中设置的变量.这是零.是什么赋予了?显然我在这里缺少一些基本的东西,因为这看起来应该是直截了当的.任何见解将不胜感激.谢谢.

ruby-on-rails

5
推荐指数
1
解决办法
1904
查看次数

使用ActiveRecord与数据仓库式表对话?

随着我的Rails应用程序的成熟,它变得越来越明显,它具有强大的数据仓库风格,缺少一个事实表来使一切都明确.

最重要的是,我刚刚阅读了Ruby Best Practices的第2章(设计美丽的API)和3(掌握动态工具包).

现在我想弄清楚如何最好地设计事实检索部分......

假设我有以下尺寸(应用中的现有模型):

  • 产品(包含资金)
  • 基金
  • 衡量(例如总持股,平均持股,平均风险)

...和一个很好的旧通用事实:

  • 事实(日期,值,加上我的每个维度的外键NULLable列)

在某些方面,我很乐意得到一些建议:

  • 什么可能构成灵活的检索界面?
  • 如果我的事实同时具有NULL(即全部或不关心)和NOT NULL(特定)维度的值,会发生什么?一个伪值如何: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解决方案.

所以我会避开那个,谢谢!

ruby activerecord ruby-on-rails data-warehouse

5
推荐指数
1
解决办法
1912
查看次数

5
推荐指数
1
解决办法
3796
查看次数

为什么我的黄瓜场景在步骤一起运行时失败,但在单独运行时通过?

当我整个运行我的黄瓜场景,或者使用命令:黄瓜时,我得到7个失败的步骤.当我使用正在进行的工作标签单独运行它们时,它们会很好地通过.

我不认为这是一个数据库状态问题..我正在运行事务,我也尝试运行没有和清理数据库清理数据库....仍然没有帮助.

我试图运行调试器,但是当我运行命令黄瓜时它似乎不起作用.它仅在我使用正在进行的工作标记运行时才有效:cucumber -p wip

我认为可能是事情运行得太快而且水豚没有正确检查事情?

有任何想法吗?

rspec ruby-on-rails cucumber

5
推荐指数
1
解决办法
1550
查看次数