我不知道我到底做错了什么。
我似乎无法让#{@user.name}在我的闪光灯中工作:注意
其他一切都很好,我可以添加新用户,但是当我添加新用户时,系统不会说“user John Doe it created”,而是说“User #{@user.name} was created”。
我在depot应用程序中的这一点上:depot_p/app/controllers/users_CONTROLER.rb来工作。
发布于 2010-04-25 05:19:08
这与字符串插值有关,它只适用于双引号字符串,与flash无关。
您可以使用序列#{ expr }将任何Ruby表达式的值替换为双引号字符串。如果表达式只是一个全局变量、类变量或实例变量,则可以省略大括号。
"Seconds/day: #{24*60*60}" » Seconds/day: 86400
"#{'Ho! '*3}Merry Christmas" » Ho! Ho! Ho! Merry Christmas
"This is line #$." » This is line 3有关更多信息,Programming Ruby是一本免费的Ruby线上书籍。
发布于 2010-04-25 05:05:29
好吧,我想通了。
Flash通知必须用双引号引起来,而不是单引号。我有:
flash:通知=‘已成功创建用户#{@user.name}。’
当它应该是flash时:通知=“用户#{@user.name}已成功创建。”
对于一个菜鸟来说,这是一个棘手的细节。供其他人参考。
发布于 2010-04-25 05:31:29
同意JRL的观点。如果要在任何字符串中使用#{foo}语法,则需要使用双引号。
https://stackoverflow.com/questions/2706115
复制相似问题