在控制器中需要嵌套参数
Require Nested Params in Controller
我需要知道如何在 Rails API 上的 Ruby 中要求嵌套参数。我为参数白名单设置了如下方法:
def user_params
params.require(:user).permit(:email, :password, :profile => [:name, :birthdate, :addy])
end
但是,这使得配置文件成为允许的参数,而不是必需的参数。我希望需要配置文件。它允许没有其他嵌套参数(基本上一切为零),但仍然必须是必需的。我该如何实现?
很可能 "required" 部分将来自您的实际模型。因此,在这种情况下,转到您的 user.rb 文件并添加以下内容。
validates :profile, presence: true
你说的是这个吗?通常,您会希望在控制器中允许参数并在实际模型文件中执行验证和内容。
如果你想在控制器中创建多个项目,你可以像这样添加它们:
def user_params
params.require(:user).permit(...)
params.require(:profile).permit(...)
end
我需要知道如何在 Rails API 上的 Ruby 中要求嵌套参数。我为参数白名单设置了如下方法:
def user_params
params.require(:user).permit(:email, :password, :profile => [:name, :birthdate, :addy])
end
但是,这使得配置文件成为允许的参数,而不是必需的参数。我希望需要配置文件。它允许没有其他嵌套参数(基本上一切为零),但仍然必须是必需的。我该如何实现?
很可能 "required" 部分将来自您的实际模型。因此,在这种情况下,转到您的 user.rb 文件并添加以下内容。
validates :profile, presence: true
你说的是这个吗?通常,您会希望在控制器中允许参数并在实际模型文件中执行验证和内容。
如果你想在控制器中创建多个项目,你可以像这样添加它们:
def user_params
params.require(:user).permit(...)
params.require(:profile).permit(...)
end