- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
提前致歉,rails 新手。
某楼主有N条评论,一条评论有1条楼主
问题:为什么我不创建评论? (返回一个 nil 对象)
在 landlands_controller#create 中:如果凭据已在数据库中,则创建房东或寻找房东:
@landlord = Landlord.where(:name => params[:landlord][:name],
:city => params[:landlord][:city], :province => params[:landlord][:province]).first_or_create!
当我调用 @landlord.comments[0].setIP request.remote_ip
之后
我收到错误 undefined method setIP for nil:NilClass
在地主 Controller 中提供new和create方法
def new
@landlord = Landlord.new
@landlord.comments.build
end
def create
#check if a landlord of the same name already exists and add comments to that db entry
@landlord = Landlord.where(:name => params[:landlord][:name], :city => params[:landlord][:city], :province => params[:landlord][:province]).first_or_create!
#:comment => params[:landlord][:comments_attributes]
@landlord.comments[0].setIP request.remote_ip
if @landlord.save
redirect_to landlords_path
else
end
结束
评论 Controller 是空的,我不确定这是否是一个问题。
最佳答案
@landlord.comments.create if @landlord.comments.empty? #add this step
@landlord.comments[0].setIP request.remote_ip
这是由于您第一次创建时,即当不存在地主对象时,first_or_create!将创建无任何注释的 landload 对象。
关于ruby-on-rails - 当使用 first_or_create 检索对象时,在对象上创建评论时发出问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17263032/
我真的很喜欢first_or_create方法: # Find the first user named Scarlett or create a new one with a particular
我正在使用 first_or_create 来填充一个包含电子邮件订阅者(称为成员)列表的表。代码如下: def community_members=(members) sel
我在 Rails 5.2 项目中使用以下代码: c = Country.where(name: "test").first_or_create c.status = "Old" c.save 这行得通
我有这个哈希,它是动态构建的: additional_values = {"grouping_id"=>1} 我想在通过 first_or_create 创建后将其与此记录对象合并: result =
我想区分由 first_or_create 搜索或创建。 record = MasterRecord.where(:name=>'test_data').firest_or_create # and
我的两个模型User和Submission如下: class User {:message => "Please enter a valid email address" } validates
我的应用程序的目标是仅显示包含现有数据的表单页面或新的空白表单。我通过使用在创建用户时创建空白记录的回调来完成此操作。 用户模型: before_create :build_health_profil
我像这样调用 first_or_create : collection = Collection.first_or_create(:title => title) 有没有办法确定结果是现有条目还是新创
我正在关注 Ryan 的 Omniauth with Devise rails 广播。部分代码是: class User "provider_id pass by auth", :uid => "u
我的模型表中有这个索引: UNIQUE KEY `index_panel_user_offer_visits_on_offer_id_and_panel_user_id` (`offer_id`,`p
您好,我有一个非常基本的 csv 导入器,用户可以使用它来导入项目。项目属于:part_number 当用户导入我要首先添加或创建的项目时,通过名称查找或创建零件号。我想要的 CSV 文件列 name
我有一个 ruby 脚本,可以将 XML 文件导入 MySQL 数据库。它通过循环遍历 XML 文件中的元素来完成此操作,最后 table.where( value: e['
是否有原生的 Sequel 方法来实现 Datamapper 的 first_or_create 方法? 或者我必须组合选择和插入吗? 最佳答案 我认为find_or_create应该适合你。 Lik
提前致歉,rails 新手。 某楼主有N条评论,一条评论有1条楼主 问题:为什么我不创建评论? (返回一个 nil 对象) 在 landlands_controller#create 中:如果凭据已在
first_or_create/first_or_create! 方法在 Rails 中有什么作用? 根据documentation , 方法“没有描述”... 最佳答案 来自Guides 先创建 f
在沙盒模式下通过 Heroku 控制台运行开发代码时,我使用 first_or_create 来测试记录是否存在: Right.where(:language => languag
我是 ActiveRecord 的新手,所以这可能是一个愚蠢的问题:我的方法是这样写的: sample_organizations = [ '37 Signals', 'Fog Creek'] sam
我正在尝试使用这个语句: @vote = Vote.where(:resource_id => params[:id], :user_id => current_user.id).first_or_c
我有用于 omni-auth 身份验证的 User 模型。我已对其进行设置,以便可以使用不同的提供商(如 facebook、google 帐户)进行登录。如果在使用这些提供商注册时电子邮件已在数据库中
为了便于解释,我将使用 SQLite 创建一个全新的 Rails (3.2.13) 项目。 rails new TestApp cd TestApp/ rake db:create rails g m
我是一名优秀的程序员,十分优秀!