草庐IT

延迟操作

全部标签

ruby-on-rails - 在 Ruby on Rails 中组合显示和编辑操作?

我只是想知道是否有人在没有任何Show操作的情况下构建过Rails应用程序。在我的应用程序中,如果用户从列表中选择,比如说一个项目,他可能不仅要显示它,还要编辑em>它。那么不执行任何显示操作而是将所有记录链接到编辑表单是否是一种好的做法?我看到的唯一警告是用户可能会不小心编辑项目。但这可以通过使用jQuery在所有表单字段上设置默认属性disabled来避免。这样,用户将必须单击“编辑”按钮才能解锁表单字段以进行编辑。这有意义吗?还是我完全疯了?谁知道呢,也许这会导致与Rails的RESTful架构发生冲突? 最佳答案 第一个想法

ruby-on-rails - Ruby on Rails : get route using controller, 操作和参数

我对RoR很陌生,我正在寻找一种方法来为给定的Controller、操作和参数获取路由。类似于url_for()但没有域和协议(protocol)。假设我有:params={"controller"=>"controller","action"=>"edit","project_id"=>"1"}我需要得到:route="/controller/edit/1"如果我不需要手动构建路由并且不需要拆分url_for()的结果,那将是最好的。RoR本身是否支持这样的功能?这可能是一个简单的问题,但我找不到答案。 最佳答案 您应该能够使用以

ruby-on-rails - 从 rails 中的 url 获取 Controller 和操作信息

如果有相应的路由规则,我如何获取有关任何(不仅是当前)url的Controller和操作名称的信息?例如:function_i_need('/pages/5')返回{:controller=>'page',:action=>'show',:id=>5}UPD:已找到答案Railsparseurltohash(Routes) 最佳答案 你可以这样做:Rails.application.routes.recognize_path"/pages/5" 关于ruby-on-rails-从rail

ruby - 如何在 ruby 中产生延迟

如何在ruby中产生延迟?我使用了sleep语句,但它没有给我想要的东西。puts"amit"sleep(10)puts"scj"我希望它先打印amit,然后延迟10秒,然后打印scj。但在上述情况下,它会暂停10秒,然后同时打印amit和scj。我不想这样。我希望你明白我想说的。 最佳答案 我无法重现这个。在控制台中,这完全符合您的预期:puts"amit"sleep10puts"scj"(Linux上的Ruby1.8.6)您能否提供一个类似的简短但完整的示例,该示例没有做您想要的-或者更多地解释您的上下文?如果您正在编写Web应

sql - 将所有 Controller 操作包装在 Rails 中的事务中

是否可以设置一个Rails应用程序,以便所有Controller操作都自动包装在一个事务中,并在出现未挽救的异常时自动回滚?我正在开发一个Rails3应用程序,目前正在执行一项相当棘手的操作,该操作会进行大量数据库更改。而且我一直弄错了很多次!一段时间后,我意识到我的代码无法正常工作,因为我最终在数据库中得到了不一致的数据。我可以很容易地用一个事务来包装它(这是一个明显需要的实例!)。然而,这让我想到,至少在开发过程中,将这个想法应用于每个Controller操作会很有用。假设这是可能的,这有什么缺点吗? 最佳答案 有关信息,我在我

ruby-on-rails - 测试 'create' Controller 操作的正确方法是什么?

我正在使用RubyonRails3.2.2、Rspec2.9.0和RspecRails2.9.0。我想测试createController操作,但我不知道如何使其成为“正确”/“正确”的方式。我“搭建”了模型、Controller、View……文件,因此在这些文件中我拥有由RubyonRails生成器生成的通用代码;在我的规范文件中,我有:it"assigns@article"donew_article=FactoryGirl.build(:article)Article.should_receive(:new).and_return(new_article)post:createas

ruby - 为什么飞船操作符里面只有一个等号?

为什么飞船运算符(operator)是选择有一个等号而不是两个?这是否与一个等号通常表示赋值,两个等号表示比较不一致? 最佳答案 为什么会有两个?中只有一个,>=和!=.这一点都不矛盾。只有==不一致,这是为了避免与赋值运算符发生冲突。 关于ruby-为什么飞船操作符里面只有一个等号?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5508338/

ruby-on-rails - Rails,编辑操作不会使用同一模型的许多实例正确填充表单

我是Rails新手,正在做我的第一个项目。另外,英语不是我的母语,所以请多多包涵。我遇到的问题是,我有一个包含同一模型的多个实例的表单,数据创建正确,但当我尝试编辑它时,表单以错误的方式填充。我正在制作一个应用程序来检查是否一切都按照规则进行。要检查的项目在嵌套关联中Chapters->Subchapters->Checks每次提交支票时,都会创建一个CheckRound,并将每张支票的信息单独存储在CheckResults中。CheckRoundshas_many:check_results,inverse_of::check_round,dependent::destroyacce

ruby-on-rails - 如何在 Ruby 中为模型创建延迟加载属性?

我想创建一个延迟加载的属性,它返回模型上的一个集合,我该怎么做?我不想为此创建关联。所以我希望它返回一个集合,如果集合还没有被初始化然后访问数据库,返回行,然后初始化它。如果它运行一次,则无需再次运行它,因为下一个页面请求将重新开始。 最佳答案 添加实例属性(例如@my_attribute)然后定义defmy_attribute@my_attribute||=initialize_my_attributeend(注意:initialize_my_attribute是您实现的函数/方法,它将加载您想要的值。)这是如何工作的:该属性以一

python字符串操作

str.upper()‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬转换字符串str中所有字母为大写‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬str.lower()‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬