小编zyl*_*024的帖子

创建失败时Ruby on Rails Active Record返回值?

我是ruby on rails的新手,无法完成这项工作.基本上我有一个用户注册页面,其中有密码确认.在User类中,我有以下验证:

validates :password, confirmation: true
Run Code Online (Sandbox Code Playgroud)

在控制器中我有

def create
    vals = params[:user]
    if(User.exists(vals[:username])) 
        flash[:warning] = "#{vals[:username]} already exists! Please try a new one. "
    else
        vals[:create_date] = DateTime.current
        user = User.create(vals, :without_protection => :true)
        if user==false or user==nil or user==vals
            flash[:warning] = "#{vals[:username]} has not been registered successfully. "
        else
            flash[:notice] = "#{vals[:username]} has been registered. "
        end
    end
    redirect_to users_path
end
Run Code Online (Sandbox Code Playgroud)

问题是,当密码确认符合时,我仍然收到通知消息,表明注册成功.正如你所看到的,我已经尝试了几个返回值,create但它们似乎都没有成功.我很确定验证是有效的,因为如果密码与确认不匹配,我就看不到我刚刚创建的用户.另外,当我使用时create!,我可以看到网站因验证错误而崩溃.任何人都可以帮助告诉我create在未经过验证的情况下应该返回什么内容吗?

谢谢.

ruby activerecord ruby-on-rails rails-activerecord

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

2D-3D单应矩阵估计

我正在使用我的Kinect进行一些2D 3D图像处理.这是我的问题:我的3D(x,y,z)中的点位于一个平面上.我也知道RGB图像(x,y)上的点的坐标.现在我想估计一个2D-3D单应矩阵来估计(x1,y1,z1)坐标到随机(x1,y1)点.我认为这是可能的,但我不知道从哪里开始.

谢谢!

image-processing homography kinect camera-matrix

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

快速枚举不能在objective-c中给出正确的对象类型?

我觉得这很奇怪.所以我有一个UIView,我想改变textcolor所有UILabel.这是我做的:

for (UILabel *label in [self subviews]) { // self is the UIView
    label.textColor = someColor;
}
Run Code Online (Sandbox Code Playgroud)

当我运行代码时,它崩溃了,就像错误一样 UIImageView: unrecognized selector setTextColor: sent to instance (some instance)

所以看起来label在快速枚举中实际上是一个UIImageView.顺便说一句,我有两个UIImageView在S UIView *self.但是,快速枚举不应该UILabel只给出(因为我指定UILabel *label而不是UIView *label)?

我认为这是问题,因为当我编写以下代码时,它可以工作.

for (UILabel *label in [self subviews]) { // self is the UIView
    if ([label isKindOfClass:[UILabel class]]) {
        label.textColor = someColor;
    }
}
Run Code Online (Sandbox Code Playgroud)

所以在这段代码中,当我检查以确保它label是a UILabel然后设置它时textcolor …

iphone objective-c ios

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

在bash中获取文件指针并任意读取行

我有一个 bash 脚本,需要在其中逐行读取文件。我知道通常的工作原理while read line,但我的程序不能很好地适应循环while。我有两个文件,需要在某些条件下逐行比较它们(不是diff:条件是一个文件中的行是否以另一个文件中的行开头)。目前我有一个Java版本的程序,它有三个嵌套循环,两个文件的循环交织在一起,我需要打破嵌套循环(我知道怎么做)。所以我想要一个优雅的解决方案来在 bash 中执行以下基本任务(以下代码是我的 Java 程序):

BufferedReader reader = new BufferedReader(new FileReader(inputFile)); // initialize a file pointer
reader.ready();                                                        // whether the pointer is at the end of the file (used in while and if conditions)
lineStr = reader.readLine();                                           // read next line
Run Code Online (Sandbox Code Playgroud)

我在网上找到的所有解决方案都使用规范while read line结构,但我的程序无法适应它。所以我想以更多的控制来操作文件。

linux io bash file-io

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

iPhone应用程序的内存释放有多重要?

我是Objective C的初学者.我知道java编程,在介绍级别课程中,内存发布没有涵盖(我不知道是否有更高级的课程或java编译器处理这个).但是,即使在介绍级别,我也需要为Objective C程序手动释放内存.我知道这样做是个好习惯,但它有多重要?特别是如果我想开发iPhone应用程序,内存释放非常紧急(而不这样做会导致处理速度显着减慢)?通过iPhone应用程序,我不是在谈论具有梦幻般的视觉效果,高品质音效以及其他可能使记忆释放变得重要的3D游戏.我只是想开发一些小工具,如计算器,提醒或日记本.那么记忆释放有多重要?

我认为在过去,当C语言程序在可能没有太多内存和处理速度的超级旧计算机上运行时,内存释放很重要.但考虑到iPhone是一种非常先进的设备,手动内存释放有点过时吗?

memory iphone memory-management objective-c

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