问题列表 - 第41805页

rails 3中的自定义操作

我正在尝试创建一个简单的链接,将我的模型中的"status"属性从"pending"切换为"active".例如,当我第一次创建用户时,我将状态设置为"pending".然后,当我显示用户列表时,我添加了一个按钮,该按钮应该将该用户的状态更改为"活动".我通过自定义操作尝试了这个(这是一个很好的方法吗?)但是我遇到了自动生成的命名路由问题.

在我的用户index.html.haml中: button_to "Manually Activate", activate_user_path

在routes.rb中:

resources :users do
  get :activate, :on => :member
Run Code Online (Sandbox Code Playgroud)

在users_controller.rb中:

 def activate
    @user = User.find(params[:id])
    @user.update_attribute(:status, 'Active')
    redirect_to @user
  end
Run Code Online (Sandbox Code Playgroud)

当我去说/ users/1/activate时,这似乎有效,因为状态会更新.但是,/ users页面没有显示并给我错误:

ActionController::RoutingError in Users#index
No route matches {:action=>"activate", :controller=>"users"}
Run Code Online (Sandbox Code Playgroud)

即,我在视图中指定的activate_user_path出现问题.(但是如果我使用另一个我没有在routes.rb中指定的命名路由风格的路径来测试它,我得到了

NameError in Users#index
undefined local variable or method `blahblah_user_url' for #<#<Class:0x00000102bd5d50>:0x00000102bb9588>
Run Code Online (Sandbox Code Playgroud)

所以它似乎知道它在routes.rb中,但其他东西是错的?我是铁杆的新手,非常感谢你的帮助!谢谢!

ruby-on-rails

8
推荐指数
2
解决办法
7534
查看次数

保持字符串在数据库中不区分大小写唯一

我想确保当用户想要在我的系统(Web 应用程序)中注册用户名时,即使不考虑大小写,用户名也是唯一的。因此,如果名为“SuperMan”的用户已经注册,则不得允许其他用户注册为“superman”或“SUPERman”。必须在数据库级别检查这一点。

\n\n

在我当前的实现中,我执行以下操作:

\n\n
\nselect count(*) from user where lower(name) = lower(?) for update;\n-- 如果计数大于 0,则错误中止\n-- 确定用户的新 ID\n插入转换为用户 (id, name, \xe2\x80\xa6) 值 (?, ?, \xe2\x80\xa6);\n
\n\n

我不确定“for update”是否会将数据库锁定得足够远,以便其他用户无法使用上述两个 SQL 语句之间的无效名称进行注册。可能这不是 100% 安全的解决方案。不幸的是我不能在 SQL 中使用唯一键,因为它们只会区分大小写进行比较。

\n\n

还有其他解决方案吗?为了增加更多的安全性,下面的怎么样?

\n\n
\nselect count(*) from user where lower(name) = lower(?) for update;\n-- 如果计数大于 0,则错误中止\n-- 确定用户的新 ID\n插入进入用户 (id, name, \xe2\x80\xa6) 值 (?, ?, \xe2\x80\xa6);\n-- 现在再次计数\n从用户中选择 count(*),其中 lower(name) = lower (?);\n-- 如果计数现在大于 1,请执行以下操作:\n从 id = ? 的用户中删除;\n-- 或者回滚事务\n
\n

sql database unique case-insensitive

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

OpenXML嵌套表

我试图将表插入TableCell,但当我尝试在MS Word中打开它时,我得到一条消息:" a <p> is required before a </tc>".

当我在兼容模式下打开文件时,表格格式看起来很完美,但缺少表格行.将简单文本插入单元格工作正常,只有在我尝试插入整个表时才会出现问题.

将表格放在另一个表格之外的文档中也可以正常工作.

nested ms-word openxml tablecell

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

RGB到最接近的预定义颜色

编辑:

给出答案我做了这个功能

function grabclosestcolor($r, $g, $b){
    $colors = array(array(124,12,12),array(7,7,11),array(110,224,219),array(123,123,123),array(124,177,74),array(130,86,53),array(77,77,77),array(164,124,68),array(204,196,132),array(164,148,147),array(163,123,67),array(26,122,26), array(195,195,50),array(193,193,193),array(255,248,73),array(243,243,243));
    $differencearray = array();
    foreach ($colors as $value) {
        $difference = sqrt(pow($r-$value[0],2)+pow($g-$value[1],2)+pow($b-$value[2],2));
        array_push($differencearray, $difference);
        $smallest = min($differencearray);
        $key = array_search($smallest, $differencearray);
        return $colors[$key];
        }
    }
Run Code Online (Sandbox Code Playgroud)


我的目标是这个.我抓住一张图片并循环遍历每个像素并抓住它的x,y和rgb.

我没有抓住rgb,而是有一个预定义的数组,我正在寻找从我抓到预定义数组的颜色中最接近的匹配.这里的目标是仅使用预定义数组中的颜色.这是我的颜色阵列.

$colors = array(array(124,12,12),array(7,7,11),array(110,224,219),array(123,123,123),array(124,177,74),array(130,86,53),array(77,77,77),array(164,124,68),array(204,196,132),array(164,148,147),array(163,123,67),array(26,122,26), array(195,195,50),array(193,193,193),array(255,248,73),array(243,243,243));
Run Code Online (Sandbox Code Playgroud)

这是我现有的代码循环遍历所有.

$int = imagesx($im) - 1;
$int2 = imagesy($im) - 1;
$start2 = 0;
do{
    $start = 0;
    do{
        $rgb = imagecolorat($im, $start, $start2);
        $r = ($rgb >> 16) & 0xFF;
        $g = ($rgb >> 8) & 0xFF;
        $b = …
Run Code Online (Sandbox Code Playgroud)

php gd function colors

13
推荐指数
3
解决办法
9774
查看次数

密码盐应该存储在数据库中自己的字段中吗?

我一直在做很多研究,以确定存储我正在开发的系统的密码的最佳实践.到目前为止,我已经决定使用带有RNG的SHA512哈希为每个密码生成一个盐(显然是针对Rainbow Tables等的最佳实践).

将密码存储在表中的两个单独字段中是否过于简单,无法确定数据库中的密码表示(有PasswordHash字段和PasswordSalt字段)?通过默默无闻看起来似乎是安全性,但我想将盐和密码哈希存储在一个连接在一起的字段中.

这会"帮助"吗?

database security passwords

5
推荐指数
2
解决办法
1263
查看次数

是否可以在LINQPad中定义可用的对象上下文变量?

我希望能够针对linq pad中的对象上下文变量进行编写,因此代码与我在生产代码中使用的代码相同.例如,如果我的对象上下文变量是'oc':

oc.Products.Where(p => p.Price > 10m);
Run Code Online (Sandbox Code Playgroud)

代替:

Products.Where(p => p.Price > 10m);
Run Code Online (Sandbox Code Playgroud)

对象上下文在我选择的变量名中可用,而不是对对象上下文使用局部变量,默认情况下LINQPad是相同的.

linq entity-framework linqpad

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

傻瓜的控制反转(IoC /依赖注入)

可能重复:
什么是控制反转?

好的,我是这个网站的新手,我已经看到人们真的愿意提供帮助,所以imma会利用这一点,如果你不介意的话就问另一个问题.

所以,我发誓很多,我发誓,但是,我似乎无法弄明白.世界上有什么反转控制(IoC或依赖注入)?为什么ASP.NET MVC + Repository Pattern项目使用它如此之多?最后,"容器"是什么意思,当他们说"注入我的控制器"时?

我知道这可能是一个古老的话题(甚至是一个愚蠢的问题),但我似乎无法获得任何傻瓜的答案.

c# dependency-injection inversion-of-control

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

无法创建Direct2D DXGI Surface

我叫这个方法:

http://msdn.microsoft.com/en-us/library/dd371264(VS.85).aspx

呼叫失败了E_NOINTERFACE.文档对于为什么会发生这种情况特别无益.我启用了所有DirectX 11调试的东西,这是我得到的最好的.我知道我有一个有效的IDXGISurface1*(也尝试过IDXGISurface),其他参数设置正确.关于为什么这个电话会失败的任何想法?

编辑:

我也在创建D3D11设备时遇到问题.如果我将nullptr作为D3D11CreateDeviceAndSwapChain中的IDXGIAdapter*参数传递,它可以正常工作,但是如果我自己枚举适配器并传入一个指针(唯一返回的),它将失败并带有无效参数.MSDN文档明确说明如果传递nullptr,则系统使用EnumAdapters1的第一个返回.我正在运行DX11系统.

directx-11 direct2d c++11

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

Selenium IDE向下箭头键

我一直试图让我的硒测试模拟向下箭头按键.

我只是使用html格式进行测试,并使用typeKeys作为命令,正确找到目标,并且对于我放入\ 40的值,它似乎在UI中转换为\\ 40.当我运行命令时,它最终将\ 40附加到输入的当前值.

我正在使用该网站的最新版本的selenium ide.

有什么指针吗?

干杯

selenium selenium-ide selenium-webdriver

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

当发现条件为false时,`if`语句不执行其他函数

在PHP中我可以这样做:

if (function1() && function2()) {
     doSomething();
}
Run Code Online (Sandbox Code Playgroud)

如果function1()返回false,则function2()不会执行.

我忘记了这个语言功能的名称......你怎么称呼它?

php if-statement terminology

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