小编fl0*_*00r的帖子

在rails中,我可以在操作返回之前访问response.body吗?

在rails中,我可以在操作返回之前访问response.body吗?

假设我想在返回之前做一些最终的字符串替换,是否可以访问response.body,即视图返回的响应?

ruby ruby-on-rails

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

Rails通过div包含错误的字段

如何在未通过验证时停止Rails更改我的代码.

每次铁路包裹我的田地

<div class='field_with_error'>...</div>
Run Code Online (Sandbox Code Playgroud)

我可以编辑fields_with_error课程

.fields_with_error{ display: inline }
Run Code Online (Sandbox Code Playgroud)

这是有效的,但它是hacky

ruby forms validation ruby-on-rails

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

如何更改Rails 3路由中的默认参数名称?

在我的Rails 3项目中,我有一个这样的路由列表:

resources :projects do
    resources :studies
end

resources :sticky_notes
resources :study_templates

...
Run Code Online (Sandbox Code Playgroud)

目前默认情况下,可以使用params [:id]调用来自这些路由的URL中的ID,但我希望能够使用params [:sticky_note_id],params [:study_template_id],params [:study_id]等来调用它们.有没有办法可以为这些项目的ID指定参数名称?我是否必须在没有"资源"的情况下手动编写每条路线?

谢谢!

编辑:这是我正在尝试做的一个例子:当路由定义如上所述时会发生这种情况:

resources :projects do
    resources :studies
end
# results in /projects/:project_id/studies/:id
# /projects/:project_id/studies/:id/edit
# /projects/:project_id/studies/:id/new
# etc.

resources :sticky_notes
# results in /sticky_notes/:id
# /sticky_notes/:id/edit
# /sticky_notes/:id/new
# etc.
Run Code Online (Sandbox Code Playgroud)

这就是我要的:

match '/projects/:project_id/studies/:study_id' => 'studies#show'
match '/projects/:project_id/studies/:study_id/edit' => 'studies#edit'
match '/projects/:project_id/studies/:study_id/new' => 'studies#new'
...

# results in /projects/:project_id/studies/:study_id
# /projects/:project_id/studies/:study_id/edit
# etc

match '/sticky_notes/:sticky_note_id' => 'sticky_notes#show'
match '/sticky_notes/:sticky_note_id/edit' => 'sticky_notes#edit'
match '/sticky_notes/:sticky_note_id/new' …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails ruby-on-rails-3

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

黑客训练模拟器

我从未试图破解网站.我刚刚遵循安全准则.现在我想尝试提高安全性.

是否有任何带有漏洞和"练习"的"训练场所",使用SQL注入,重新定义全局变量,XSS和其他类型的漏洞.一种黑客沙箱.

security xss sql-injection

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

如何将数据从模型导出到rubyonrails上的excel文件

我正在尝试将数据从我的模型导出到Excel电子表格.我见过3种方法

  1. 使用我不了解如何使用它的电子表格gem,我看到的示例是写入本地文件,但我希望每次用户点击链接时生成一个文件.
  2. 创建一个名为export的方法,然后在那里运行查询,然后在我的视图中创建一个export.xls文件,然后创建该表的文件我想导出到excel文件,但是这种方法不允许我创建多个床单.
  3. 按照本教程http://oldwiki.rubyonrails.org/rails/pages/HowToExportToExcel,但这里没有说明如何将链接放在视图中,看着我在路线中遗漏了一些东西,我可以给github所以你可以根据需要查看我的代码.

ruby excel ruby-on-rails spreadsheet ruby-on-rails-3

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

将Ruby代码和文字标记与Haml混合使用

如何在HAML中编写此ERB

<%= some_ruby_code %>:
# OR
<%= some_ruby_code %><br />
Run Code Online (Sandbox Code Playgroud)

我可以:

=some_ruby_code + ":"
# and
=some_ruby_code
%br
Run Code Online (Sandbox Code Playgroud)

但我不想在这里连接,我想把它写在内联:

(=some_ruby_code):
# and
(=some_ruby_code)%br
Run Code Online (Sandbox Code Playgroud)

ruby haml ruby-on-rails

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

MongoDB:使用嵌入对象的好处

使用嵌入对象有什么好处?

在我的实践中,当我不在其父级之外使用嵌入式对象时,这是非常罕见的.我的意思是通常的例子comments是embedded_in post:我需要在更新列表中显示最后的注释,我需要显示current_user等的注释.因此注释不能嵌入或者它将是一个痛苦的屁股.

因此,当我需要使用嵌入对象时,很少有用例.

问题是:为什么我应该使用嵌入式对象,即使在那些罕见的用例中,嵌入有什么好处?

mongodb mongoid

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

暂停并恢复运行mysql查询

我的查询速度很慢(实际上这是从mysql.dump加载的数据).现在我想检查已经加载了多少行.

select count(*) from my_table;
Run Code Online (Sandbox Code Playgroud)

至于数据加载,my_table被锁定,所以我无法在加载转储之前执行此sql.

Cmd       ID   State               User   Host           DB      Time   Query                           
Query     191  update              root   localhost      rehub   00:09  INSERT INTO `my_table` VALUES ...
Query     189  Waiting for table   root   localhost      rehub   06:25  select count(*) from my_table
Run Code Online (Sandbox Code Playgroud)

那么有没有办法暂停查询191,执行查询189然后恢复查询191?

mysql sql

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

保护Carrierwave上传的文件

想要确保只有登录的用户可以查看/下载从carrierwave上传的文件.

这是怎么做到的?

将商店目录从公共目录移动到RAILS_ROOT,创建显示和下载的路径.

问题是如果它是一个图像,<%= image_tag(photo.image_url) %>我得到完整路径/Users/myname/projects/appname/files/image/id/image.png,这样就不会渲染.

此外,如果视图不会渲染我的绝对路径,只是来自网站的相对路径,那将是很好的.

file-upload ruby-on-rails carrierwave

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

闪存消息存储在哪里?

我以为它们存放在饼干中 - 但不,饼干检查没有给我任何东西.会话也不存储它们.那么,我能在哪里找到它们?

我需要这个来直接设置它们(而不是通过flash哈希).

ruby ruby-on-rails flash-message

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