草庐IT

castle-activerecord

全部标签

ruby-on-rails - 如何避免运行 ActiveRecord 回调?

我有一些模型具有after_save回调。通常这很好,但在某些情况下,例如创建开发数据时,我想在不运行回调的情况下保存模型。有没有一种简单的方法可以做到这一点?类似于...Person#save(:run_callbacks=>false)或Person#save_without_callbacks我查看了Rails文档,但没有找到任何内容。然而,根据我的经验,Rails文档并不总能说明全部情况。更新我找到了ablogpost这解释了如何从这样的模型中删除回调:Foo.after_save.clear我找不到记录该方法的位置,但它似乎有效。 最佳答案

ruby-on-rails - 如何使用 activerecord 获取最后 N 条记录?

在查询中使用:limit,我将获得前N条记录。获取最后N条记录的最简单方法是什么? 最佳答案 这是Rails3的方式SomeModel.last(5)#last5recordsinascendingorderSomeModel.last(5).reverse#last5recordsindescendingorder 关于ruby-on-rails-如何使用activerecord获取最后N条记录?,我们在StackOverflow上找到一个类似的问题: ht

ruby-on-rails - 是什么导致了这个 ActiveRecord::ReadOnlyRecord 错误?

接下来是this之前的问题,已回答。我实际上发现我可以从那个查询中删除一个连接,所以现在工作查询是start_cards=DeckCard.find:all,:joins=>[:card],:conditions=>["deck_cards.deck_id=?andcards.start_card=?",@game.deck.id,true]这似乎有效。但是,当我尝试将这些DeckCards移动到另一个关联时,我收到ActiveRecord::ReadOnlyRecord错误。这是代码forplayerin@game.playersplayer.tableau=Tableau.news

ruby-on-rails - 复制 activerecord 记录的最简单方法是什么?

我想制作一个ActiveRecord对象的副本,更改过程中的单个字段(除了id之外)。实现此目的的最简单方法是什么?我意识到我可以创建一个新记录,然后遍历每个字段,逐个字段地复制数据-但我认为必须有更简单的方法来执行此操作。也许是这样的:new_record=Record.copy(:id) 最佳答案 要获取副本,请使用dup(或克隆#rails>=3.1new_record=old_record.dup#rails然后您可以更改任何您想要的字段。ActiveRecordoverridesthebuilt-inObject#clon

ruby-on-rails - 如何配置与非 ActiveRecord 模型的 has_many 关联

我的Rails应用程序在数据库中存储了一个普通的ActiveRecord“帐户”模型。该模型会将URL存储到定义了一些其他对象的远程XML文件中。例如,Accounthas_many:galleries但Gallery模型仅由XML文档中的节点定义。那么,如何让/accounts/1/galleries显示该帐户的XML中的画廊?如何建立这种关系?我知道如何制作基本的非AR模型,但我不确定如何定义关联或者我是否需要创建图库模型。 最佳答案 如果关联已知,您可以使用关联名称在Account中简单地创建实例方法。例如:defgaller

ruby-on-rails - XML Schema (XSD) 到 Rails ActiveRecord 映射?

我正在寻找一种将XML架构定义文件转换为ActiveRecord建模数据库的方法。有谁知道恰好可以执行此操作的工具?到目前为止,我发现的最佳方法是首先将XSD加载到RDBMS(如postgres或mysql)中,然后让Rails连接以执行rakedb:schema:dump。然而,这只会给我留下一个没有Rails模型的数据库。将这个基于xsd的数据库导入/加载到Rails中的最佳方法是什么? 最佳答案 您是否尝试使用gemmagic_model_generator从数据库生成模型?参见:http://magicmodels.ruby

ruby-on-rails - 使用 ActiveRecord::Serialization.to_xml 构建动态字段

我很好奇人们使用AR的to_xml()从Controller构建非实体字段(例如,不是您正在序列化的模型的属性,而是可能在流程中利用属性)的体验。to_xml似乎为此提供了一些选项。一种是传递对被操作对象的方法的引用:在序列化过程中,调用这些方法并将它们的结果添加到生成的文档中。我想避免这条路径,因为一些生成的数据虽然取决于对象的属性,但可能超出模型本身的范围——例如,为特定项目“显示”操作构建URL。另外,它需要太多的深思熟虑。我希望能够通过调整来自Controller的to_xml代码来更改生成的文档。我也不想在对象中声明方法的麻烦。覆盖每个对象中的to_xml也是如此。其他两个选

ruby-on-rails - 覆盖 to_xml 以收集 ActiveRecord 对象

好的,我知道您可以为ActiveRecord对象的单个实例覆盖to_xml方法,它对我来说工作得很好。但是我将如何着手覆盖对象集合的to_xml方法?假设对于任务模型实例,我实现了如下所示的to_xml。defto_xmlsuper(:methods=>[:tag_list],:include=>{:project=>{:include=>{:folder=>{}}},:folder=>{}})end当单个任务被序列化为xml时工作得很好。但是当我的代码运行收集任务时,如下面的代码render:xml=>@tasks.to_xml我明白了wrongnumberofarguments(1

android - 如何使用 Android 版 Spongy CaSTLe 加密和解密文件

我在SDCard上存储了一个XML文件。我需要对整个文件作为一个单元进行加密和解密。我已经看到SpongyCaSTLe是一个很好的android加密和解密库。但是,我找不到任何密码类来将文件作为一个单元进行加密和解密。如果有人能就此提供进一步的帮助,我将不胜感激。任何示例代码都会有很大帮助。 最佳答案 能否请您看一下之前关于Android密码学的问题,如果他们回答了您的问题,请告诉我们?如果没有,能否请您详细说明您的要求,特别是详细解释为什么您需要加密这个特定的XML文件,以及您希望key从哪里来?Basicencryptionon

ruby-on-rails - to_xml 不适用于通过 Rails ActiveRecord habtm 引用返回的对象

我有两个Rails事件记录类,School和Instructor通过has_and_belongs_to_many关系链接。我需要在我的instructors_controller中查询特定学校的讲师并返回xml格式的响应。因此,在索引方法中我有这个代码片段:school=School.find(params[:school_id])@instructors=school.instructors及以后:respond_todo|format|format.html#index.html.erbformat.xml{render:xml=>@instructors}format.json