ruby on rails 3 -访问neo4j中的所有节点



在rails控制台上,我试图调用

@invoice = Invoice.all

返回像

这样的对象

<Neo4j::Traversal::Traverser:0x817382>

但是当我尝试像

这样循环遍历对象时

@invoice.each { |t| p t.number }

没有,但是数据库中有发票数据

发票类

class Invoice < Searchable

include Neo4jrb::Paperclip

include LinkableEntity

include HeadsupNotify

enable_optimistic_locking

before_destroy :verify_links, :prepend => true

before_destroy :destroy_invoice_items

property :number, :type => :string

property :currency, :default => Money.default_currency.to_s

property :date, :pay_by_date, :type => :date

property :purchase_order_number

property :settle, :default => false

property :link_1, :link_2, :type => :string

index :number, :type => :fulltext

domain_property :details

money_property :total_cost, :receivable_amount

attr_protected :total_cost, :receivable_amount

attr_accessor :delink_receipt

validates :total_cost, :numericality => {:greater_than_or_equal_to => 0}

validates :receivable_amount, :numericality => {:greater_than_or_equal_to => 0}

validates :date,:number, :customer_id, :event_id, :project_id, :department_id, :brand_id, :premise_id, :user_id, :currency, :presence => true

validates :link_1, :length => { :maximum => 250 }

validates :link_2, :length => { :maximum => 250 }

validate :number_uniqueness

validate :invoice_items_present

validate :invoice_items_currency

validate :issue_credit_notes_valid

validate :pay_by_date_valid, :unless => "date.nil?"

validate :check_not_linked, :on => :update

has_one(:event).from(Event, :invoices_for_event)

has_one(:project).from(Project, :invoices_for_project)

has_one(:department).from(Department, :invoices_for_department)

has_one(:brand).from(Brand, :invoices_for_brand)

has_one(:premise).from(Premise, :invoices_for_premise)

has_one(:user).to(User)

has_one(:customer).from(Customer, :invoices_for_customer)

alias :party :customer

has_n(:invoice_items).to(InvoiceItem)

has_n(:receipts).from(Receipt, :paid_invoices)

has_n(:issue_credit_notes).from(IssueCreditNote, :credit_notes_for_invoice)

has_one(:invoices_for_settle).to(Settle)

links :receipts, :issue_credit_notes,:invoices_for_settle

has_neo4jrb_attached_file :photo

{:customer => :name, :event => :name, :department => :name, :project => :name, :brand => :name, :premise => :name, :user => :email}.each do |target, method| delegate method, :to => target, :prefix => true, :allow_nil => true end

accepts_id_for :customer, :event, :project, :department, :brand, :premise, :user

accepts_nested_attributes_for :invoice_items, :allow_destroy => true

validates_associated :invoice_items

validates :customer_name, :presence => true, :length => { :maximum => 100 }

validates :event_name, :presence => true, :length => { :maximum => 100 }

validates :premise_name, :presence => true, :length => { :maximum => 100 }

validates :project_name, :presence => true, :length => { :maximum => 100 }

validates :brand_name, :presence => true, :length => { :maximum => 100 }

validates :department_name, :presence => true, :length => { :maximum => 100 }

validates :link_1, :length => { :maximum => 250 }

validates :link_2, :length => { :maximum => 250 }

after_validation :set_total_cost

serialize :methods => :invoice_items

before_validation :delink

有谁能帮我一下吗?

我不太确定如何用Ruby On Rails做到这一点,但是如果您的Invoice对象(节点)在lucene全文索引中,您可以使用Cypher查询返回所有Invoice。

类似:
START invoices=node:Invoices('name: *') RETURN invoices;

相关内容

  • 没有找到相关文章

最新更新