Ruby语法的灵活性?

对于Ruby的语法不是很熟悉,遇到一个问题,现在还没有明白怎么回事,先记下来,也许以后等用的熟练的就明白了

一个form有两个field,对应数据库表中的两个字段[code]




[/code]

数据表[code]CREATE TABLE `users` (
`id` int(12) NOT NULL auto_increment,
`user_name` varchar(50) NOT NULL,
`photo` varchar(200) NOT NULL default '/images/account/default.jpg',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;[/code]

提交到action后,分别通过两种写法,user_name的值是一样的,而photo的值是完全不一样的。

[code]@user = User.new(params[:user])
puts(@user.user_name)
puts(@user["user_name"])
puts(@user.photo)
puts(@user["photo"])[/code]

user_name打印出来值是完全一样的,而photo第一个取到的是file对象,第二个取到的是数据库表相应字段的缺省值,'/images/account/default.jpg'.

还需要好好学习,明白其中的意思

你可能感兴趣的:(Ruby,on,Rails)