小编dan*_*ave的帖子

将变量传递给模型after_initialize方法

我有以下(大大简化)模型,使用will_paginate

class Search < ActiveRecord::Base

  attr_reader :articles

  def after_initialize
    @articles = Article.paginate_by_name name, :page => 1
  end

end
Run Code Online (Sandbox Code Playgroud)

我的show动作中的控制器代码是

@search = Search.new(params[:search])
Run Code Online (Sandbox Code Playgroud)

这一切都很好,但是请注意我将页码硬编码为1,问题是将params [:page]值传递给after_initialize方法,有人能建议一个优雅的方法吗?

谢谢

ruby search model ruby-on-rails will-paginate

3
推荐指数
1
解决办法
2100
查看次数

从缩略图图像网格中选择多个图像

我在表单上有缩略图图像网格,我希望用户能够选择多个图像,并使用表单提交他们的选择.

我的要求是:

  • 单击以选择图像,并且选择被反馈给用户,例如通过改变边界.
  • 优雅地降级到html,仍然有效.
  • 跨浏览器/设备支持(例如需要在ipad上工作)

我的所有要求都能满足吗?

谢谢.

html javascript forms jquery image

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

对mass_assignment_authorizer的更改会导致Ruby on Rails 3.1中的错误

像在这个railscast中一样,防止质量分配在Rails 3.1中不再有效.

给出的错误是:

错误的参数个数(1表示0)

对于

app/models/user.rb:20:in `mass_assignment_authorizer'
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails mass-assignment ruby-on-rails-3

3
推荐指数
1
解决办法
1219
查看次数

增强智能指针会帮助我吗?

我正在使用Xerces做一些xml写作.

这是从我的代码中提取的几行:

DOMLSSerializer *serializer = ((DOMImplementationLS*)implementation)->createLSSerializer();
serializer->release();
Run Code Online (Sandbox Code Playgroud)

有没有我可以使用的boost智能指针,所以我可以避免调用serializer-> release(); 因为它不是例外安全.我看到的问题是,智能指针只能调用指针对象上的delete,是否可以自定义调用release?

谢谢

c++ boost

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

使用带有mfc的FindWindow api调用的通配符

我在mfc应用程序中使用FindWindow.

HWND hWnd = ::FindWindow(NULL, _T("foobar v5"));
Run Code Online (Sandbox Code Playgroud)

我想将FindWindow与通配符一起使用,以便我可以匹配foobar.

谢谢

c++ api mfc findwindow

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

填充向量时的效率

哪个更有效率,为什么?

vector<int> numbers;

for (int i = 0; i < 10; ++i)
    numbers.push_back(1);
Run Code Online (Sandbox Code Playgroud)

要么

vector<int> numbers(10,0);

for (int i = 0; i < 10; ++i)
    numbers[i] = 1;
Run Code Online (Sandbox Code Playgroud)

谢谢

c++ stl vector

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

避免在linux下的共享对象C接口上进行名称修改

在Windows下,我们有一个C接口(extern"C"{// interface})到我们的C++库,它使用模块定义文件(.def)导出未编码的函数.

我试图在linux下重新创建相同的东西,我相对缺乏经验.据我所知,在NIX系统下,默认情况下会导出所有函数.考虑到这一点,我创建了一个共享对象,我通过nm命令运行.

我很惊讶地看到,与Windows不同,我的功能名称已被破坏!

我该怎么办呢?

c c++ linux name-mangling shared-objects

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