我正在研究neo4j rails項目,該項目涉及來自同一模型的節點之間的父 - 子類型關係。任何孩子可以有多個父母。我希望能夠在創建新的孩子時創建親子關係。我應該如何實現這一點?目前,該應用程序設置爲僅在創建子級時創建一個父子關係。Neo4jrb Rails項目:傳遞不定數量的參數以生成關係
# View for ...things/new
<div class="new-thing-form">
<%= form_for(@thing) do |f| %>
<%= f.text_field :name, placeholder: "Thing Name" %>
<%= text_field_tag :parent, '', placeholder: "Parent Name" %>
<%= f.submit "Create Thing" %>
<% end %>
</div>
# Model for Thing
class Thing
include Neo4j::ActiveNode
property :name, type: String
property :description, type: String
has_many :out, :children_things, type: :PARENT_OF, model_class: :Thing
has_many :in, :parent_things, model_class: :Thing, origin: :children_things
validates_presence_of :name
end
我已經考慮了三種可能的解決方案,到目前爲止並在時遇到環繞我周圍的頭(我是新來的網絡發展,所以我道歉,如果這是基本的東西)。
- 動態添加字段
我已經簽出Railscasts插曲196和197,但是我使用有問題 「accepts_nested_attributes_for。」此外,這是相同模型的節點之間的關係,那麼是否有添加和刪除字段而不使用嵌套屬性的方法?
- 創建多選列表
- 爲PARENT_OF關係
有關於創建使用自舉和ActiveRecord多選菜單許多文章。我應該如何使用Neo4j來實現這些?
有沒有一種方法來創建通過形式邏輯關係創建ActiveRel?如果是這樣,那麼是否有一種方法可以與nested_attributes方法一起創建新的PARENT_OF關係,以創建子事物?
對不起開放式問題。我一直在尋找幾天的時間,並且非常感謝一些指導,即使你可以指引我朝着正確的方向前進。任何建議都會有幫助。再次感謝。
布賴恩,感謝您的迴應。我仍然對如何格式化視圖感到困惑,以便用戶在創建新節點時可以輸入無限數量的「parent_things」。我怎樣才能創建一個可以支持的表單? –
剛做了一個編輯,試試了 –
謝謝Brian。這確實在父id的params散列中創建了一個數組。在前端,每個標籤仍然只是一個文本字段。我調整了應用程序的工作流程,以便創建「事物」並添加「parent_things」由兩個單獨的視圖處理。感謝提示,瞭解如何在params散列中創建類似的數組非常有用。 –