Ruby on rails 帮助解释这段Rails代码
这是什么Ruby on rails 帮助解释这段Rails代码,ruby-on-rails,ruby,Ruby On Rails,Ruby,这是什么 "#{h params[:chat_input]}" 我指的是散列#和h最有可能是在双引号字符串中,例如“Ponies all love”{h params[:chat#u input]}!表达式导致对stuff表达式进行解释并插入字符串。例如“1+2=#{1+2}”将导致字符串“1+2=3” h是该方法的一个别名,这是很自然的。这很可能是在一个双引号字符串中,例如“Ponies all love{h params[:chat_input]}!”表达式导致对stuff表达式进行解释并
"#{h params[:chat_input]}"
我指的是散列
#
和h
最有可能是在双引号字符串中,例如“Ponies all love”{h params[:chat#u input]}!
表达式导致对stuff表达式进行解释并插入字符串。例如“1+2=#{1+2}”
将导致字符串“1+2=3”
h
是该方法的一个别名,这是很自然的。这很可能是在一个双引号字符串中,例如“Ponies all love{h params[:chat_input]}!”
表达式导致对stuff表达式进行解释并插入到字符串中。例如“1+2=#{1+2}”
将导致字符串“1+2=3”
h
是该方法的别名,这是不言自明的。它只是在字符串中插入一个值。:chat_输入是一个符号,用于代替字符串,因为符号只创建一次。它只是在字符串中插入一个值。:chat_输入是一个符号,用于代替字符串,因为符号只创建一次。粘贴的代码本身只是一条注释。不过,我假设代码在字符串中
"hello, #{5 + 5}"
# => hello, 10
括号内的语句将作为Ruby进行计算。这称为字符串插值
代码中插值内的语句是获取参数的方法
h params[:chat_input]
h(params[:chat_input])
h
方法是html\u escape
的快捷方式,它可以转义html。例如,
被转换为span
,以便浏览器显示字符串的实际内容,而不是将其解释为HTML
html_escape(params[:chat_input])
您可能知道什么是params
总之,无论参数[:chat_input]包含什么,都会得到一个HTML转义版本。粘贴的代码本身只是一个注释。不过,我假设代码在字符串中
"hello, #{5 + 5}"
# => hello, 10
h(something)
括号内的语句将作为Ruby进行计算。这称为字符串插值
代码中插值内的语句是获取参数的方法
h params[:chat_input]
h(params[:chat_input])
h
方法是html\u escape
的快捷方式,它可以转义html。例如,
被转换为span
,以便浏览器显示字符串的实际内容,而不是将其解释为HTML
html_escape(params[:chat_input])
您可能知道什么是params
总之,对于params[:chat_input]包含的任何内容,您都会得到一个HTML转义版本
h(something)
或
由于ruby不强制使用(),因此rails中提供了一个函数,可以将参数转换为“安全HTML”字符串,从而避免解释“something”变量中可能的HTML代码
"#{x}"
在ruby中,表示将x变量转换为字符串并将其放入新字符串中,例如:
"#{host}:#{port}"
将主机的值和端口的值放入由“”组成的新字符串中,如果主机为“localhost”,端口为30,则结果字符串为“localhost:30”
params是一个特殊的rails散列,它包含传递给正在执行的控制器方法的post/get参数
另一个细节是,在ruby中,方法总是返回最后计算的表达式
那么方法呢
def test
"#{h params[:chat_input]}"
end
将返回一个字符串,该字符串具有post/get参数chat_输入的HTML安全值
或
由于ruby不强制使用(),因此rails中提供了一个函数,可以将参数转换为“安全HTML”字符串,从而避免解释“something”变量中可能的HTML代码
"#{x}"
在ruby中,表示将x变量转换为字符串并将其放入新字符串中,例如:
"#{host}:#{port}"
将主机的值和端口的值放入由“”组成的新字符串中,如果主机为“localhost”,端口为30,则结果字符串为“localhost:30”
params是一个特殊的rails散列,它包含传递给正在执行的控制器方法的post/get参数
另一个细节是,在ruby中,方法总是返回最后计算的表达式
那么方法呢
def test
"#{h params[:chat_input]}"
end
将返回一个字符串,该字符串具有post/get参数chat_input的HTML安全值“{h params[:chat_input]}”
在ruby中,双引号字符串允许对表达式求值并自动转换为字符串
我可以这样做:
years = 25
"John is " + years + " years old"
但是我会得到一个错误,因为我无法将数字添加到字符串中
我能行
"John is #{years} years old"
为了避开这个问题
h()方法是一个Rails帮助函数,用于删除HTML标记。这是一件安全的事情
最后,params()是Rails中的一个方法,它允许您访问GET和POST参数。它实际上是包装一个hash GET和POST参数以减少内存(符号只定义一次,而像“foo”这样的字符串每次都是一个新对象)
因此,params[:chat_input]从上一个请求的GET或POST参数中检索值,在您的例子中,它看起来只是在显示和清理它们
希望有帮助 “{h参数[:聊天输入]}”
在ruby中,双引号字符串允许对表达式求值并自动转换为字符串
我可以这样做:
years = 25
"John is " + years + " years old"
但是我会得到一个错误,因为我无法将数字添加到字符串中
我能行
"John is #{years} years old"
为了避开这个问题
h()方法是一个Rails帮助函数,用于删除HTML标记。这是一件安全的事情
最后,params()是Rails中的一个方法,它允许您访问GET和POST参数。它实际上是包装一个hash GET和POST参数以减少内存(符号只定义一次,而像“foo”这样的字符串每次都是一个新对象)
因此,params[:chat_input]从上一个请求的GET或POST para检索值