Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何从他们编写的部分评论链接到用户显示页面?_Ruby On Rails_Routing - Fatal编程技术网

Ruby on rails 如何从他们编写的部分评论链接到用户显示页面?

Ruby on rails 如何从他们编写的部分评论链接到用户显示页面?,ruby-on-rails,routing,Ruby On Rails,Routing,我是一名编程新手,正在努力掌握rails,我很难理解如何将链接路由到应用程序中的某些页面 我有一个用户评论和场馆表,其中一个用户有很多评论,而一个场馆有很多评论 评论在相应的场馆展示页面上显示为部分,每个部分都包含撰写评论的用户的信息 复习部分 该行正在重定向到当前页面(场馆展示页面),我希望它重定向到用户展示页面 我错过了什么?我在哪里可以读到这篇文章来做对呢?我不知道什么时候使用@user,:user,user还是user 谢谢你的帮助,非常感谢 这是一个很好的开始-看起来你只需要多学一

我是一名编程新手,正在努力掌握rails,我很难理解如何将链接路由到应用程序中的某些页面

我有一个用户评论和场馆表,其中一个用户有很多评论,而一个场馆有很多评论

评论在相应的场馆展示页面上显示为部分,每个部分都包含撰写评论的用户的信息

复习部分


该行正在重定向到当前页面(场馆展示页面),我希望它重定向到用户展示页面

我错过了什么?我在哪里可以读到这篇文章来做对呢?我不知道什么时候使用@user,:user,user还是user


谢谢你的帮助,非常感谢

这是一个很好的开始-看起来你只需要多学一点Ruby,你就会明白这里发生了什么。您有两个问题,一个是关于视图帮助程序,另一个是关于变量、符号和常量。我会在每一个尝试

在您的情况下,
link\u to
标记应使用如下方式:

<%= link_to user_path(@user) %>

假设您使用的是默认的Rails路由,那么您使用的是指向
@user
链接\u-to
帮助程序指向
用户\u控制器#show
方法

你问题的第二部分如下:

User
是要创建的所有用户对象的常量。将其视为所有用户的蓝图<代码>用户。新建创建一个空的、未保存的用户对象,供您填写所需信息

user
是一个变量。它将仅在您正在进行的任何工作的上下文中可用。如果您在控制器中说
user=user.new
,则该
user
对象在您的视图中不可用

@user
是一个实例变量。它的工作原理与标准变量基本相同,但如果要在控制器中定义
@user=user.new
,则可以在视图中使用该对象

:user
是用户符号。要定义Rails使用符号的目的有点困难,但在这种情况下不需要它

我建议您查看Why's辛辣的Ruby指南,或者阅读一些其他介绍性书籍,了解更多关于Ruby语言结构的知识——这将真正有助于澄清为什么您想要这些


此外,我还使用了用于快速搜索Ruby和Rails API的。您有两个问题,一个是关于视图帮助程序,另一个是关于变量、符号和常量。我会在每一个尝试

在您的情况下,
link\u to
标记应使用如下方式:

<%= link_to user_path(@user) %>

假设您使用的是默认的Rails路由,那么您使用的是指向
@user
链接\u-to
帮助程序指向
用户\u控制器#show
方法

你问题的第二部分如下:

User
是要创建的所有用户对象的常量。将其视为所有用户的蓝图<代码>用户。新建创建一个空的、未保存的用户对象,供您填写所需信息

user
是一个变量。它将仅在您正在进行的任何工作的上下文中可用。如果您在控制器中说
user=user.new
,则该
user
对象在您的视图中不可用

@user
是一个实例变量。它的工作原理与标准变量基本相同,但如果要在控制器中定义
@user=user.new
,则可以在视图中使用该对象

:user
是用户符号。要定义Rails使用符号的目的有点困难,但在这种情况下不需要它

我建议您查看Why's辛辣的Ruby指南,或者阅读一些其他介绍性书籍,了解更多关于Ruby语言结构的知识——这将真正有助于澄清为什么您想要这些


此外,我使用用于快速搜索Ruby和Rails API。

关于
user\u path(@user)
?@apreading,感谢您的关注,它试图指向具有场地ID的用户,并给出“找不到ID=30的用户”错误。这真的很奇怪:)当您执行
,它会显示什么?@apreading,它显示Nilclass关于
user\u path(@user)
?@apreading,感谢您的关注,它试图指向具有场地ID的用户,并给出了一个“找不到ID=30的用户”错误。这真的很奇怪:)当您执行
,它会显示什么?@apreading,它显示Nilclass感谢您的伟大回答!我会检查一下,using users_path(@user)指向Rails项目目录中的用户索引页面thoughtype
rake routes
,只需将_path附加到与用户_controller#show对应的条目。另外,看看这里:当然,
users\u path
lead to index,
user\u path(id)
toshow@apneadiving,明白了,works@Dave:好的,很好:)奇怪你的
@user
变量是空的!谢谢你的回答!我会检查一下,using users_path(@user)指向Rails项目目录中的用户索引页面thoughtype
rake routes
,只需将_path附加到与用户_controller#show对应的条目。另外,看看这里:当然,
users\u path
lead to index,
user\u path(id)
toshow@apneadiving,明白了,works@Dave:好的,很好:)奇怪你的
@user
变量是空的!