gpt4 book ai didi

ruby-on-rails - 我想使用 .find() 和 Ruby on Rails 返回单个结果

转载 作者:太空宇宙 更新时间:2023-11-03 16:54:19 25 4
gpt4 key购买 nike

我有一个用户 View 和一个租赁 View 。在我的租赁 View 中,我试图显示当前用户名。我想我已经很接近了,但我无法解决最后一点问题。

这会返回选择列表中的所有用户

<%= f.select :user_id, User.find(:all).collect {|t|
[t.user_name, t.id]} %>

这将返回我当前的用户 ID

<%= f.number_field :user_id %>

所以我想我可以做类似的事情

<%= f.select :user_id, User.find(:user_id).collect {|t|
[t.user_name, t.id]} %>

我只想返回选择列表中的当前用户,他们的 id 作为值,他们的名字在列表中。如果我这样做,它会告诉我

Couldn't find User with id=user_id

所以 user_id 作为文字字符串传递,但我想传递 user_id 变量,它应该是 10 之类的东西。我不知道如何将 user_id 作为变量传递。

我对 ROR 还很陌生,我可能会以完全错误的方式解决这个问题。非常感谢任何帮助。

最佳答案

我假设您有一个租赁对象,您为其显示表单,我假设它是一个实例变量 @rental,此外我假设在您的 Rental 中类有如下关系

class Rental

belongs_to :user

end

那么你可以只写下面的内容:

f.select :user_id, [[@rental.user.user_name, @rental.user.id]]

希望这对您有所帮助。

关于一个相关但不太重要的说明:为 user 设置一个名为 user_name 的列真的很奇怪:我会将该列称为 name,因为无论如何它都是用户的一部分。

关于ruby-on-rails - 我想使用 .find() 和 Ruby on Rails 返回单个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13521603/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com