小编Jas*_*ase的帖子

使用rails嵌套模型来创建*外部对象并同时*编辑*现有的嵌套对象?

使用Rails 2.3.8

目标是创建一个Blogger,同时更新嵌套的用户模型(如果信息已更改等),或者创建一个全新的用户(如果它尚不存在).

模型:

class Blogger < ActiveRecord::Base
  belongs_to :user
  accepts_nested_attributes_for :user
end
Run Code Online (Sandbox Code Playgroud)

Blogger控制器:

def new
  @blogger = Blogger.new
  if user = self.get_user_from_session
    @blogger.user = user
  else
    @blogger.build_user
  end
  # get_user_from_session returns existing user 
  # saved in session (if there is one)
end

def create
  @blogger = Blogger.new(params[:blogger])
  # ...
end
Run Code Online (Sandbox Code Playgroud)

形成:

<% form_for(@blogger) do |blogger_form| %>
  <% blogger_form.fields_for :user do |user_form| %>
    <%= user_form.label :first_name %>
    <%= user_form.text_field :first_name %>
    # ... other fields for …
Run Code Online (Sandbox Code Playgroud)

activerecord ruby-on-rails nested-forms nested-attributes

20
推荐指数
2
解决办法
4030
查看次数

Rails的确切作业执行顺序delay_job

我正在使用Collectoridea的delay_job版本:https : //github.com/collectiveidea/delayed_job

谁能指出我当工人去选择下一份工作时所使用的实际标准?我假设它像“ SELECT ID FROM Delayed_jobs WHERE run_at> NOW()ORDER BY priority ASC,run_at ASC LIMIT 1”(优先选择优先,run_at时间第二),但我一直无法找到确切的内容考虑过的。我已经在GitHub上的代码中做了一些探索,但是还没有找到下一份工作的实际查询。对几件事感到好奇,包括是否将“ created_at”,“ attempts”或“ failed_at”因素都放在了优先级中。(而且我意识到我不太可能找到实际的SQL,这只是表示我假设查询所做的一种简单方法)。

其次,该宝石的实际文档有什么好的来源?对于在Rails中如此普遍使用的东西,我所看到的文档相当稀疏。

ruby-on-rails delayed-job

2
推荐指数
1
解决办法
2382
查看次数