显示来自 Rails/Neo4j 的哈希值
Displaying Hashed values from Rails/Neo4j
我正在从 Postgres 迁移到 Neo4j,我试图显示我的 Neo4j 查询的结果是部分的。
home_controller.rb
def index
@products = Product.as(:p).where(featured: True).limit(12).pluck(:p)
respond_with(@products)
end
index.html.erb
<div class="row">
<div id="products">
<%= render partial: "/products/product_display", collection: @products, as: :product, locals: { product_class: "col-lg-4 col-md-4 col-sm-4 product" } %>
</div>
</div>
_product_display.html.erb
:
<div class="product-title">
<h5><%= link_to product.product_name, product_detail_path(product) %></h5>
</div>
:
我似乎遇到的问题是 returns 以下内容:
[#<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>]
我得到:
undefined method `product_name' for #<Product>
我确定这只是掌握对 Rails 的基本理解的一部分,但使用 Postgres 没问题。
我是新手,希望得到一些帮助。
我猜您没有为 product_name
分配 属性。由于 Neo4j 是无模式的,它不能像 ActiveRecord 那样从数据库中读取列列表。如果你这样做会怎样?
class Product
include Neo4j::ActiveNode
property :product_name
end
property
方法设置 product_name
和 product_name=
方法,这些方法设置 属性 用于持久化。
对于迁移,如果您已经设置了 ActiveRecord 模型,您应该检查这个项目:
https://github.com/neo4jrb/neo4apis-activerecord
它不需要 ActiveRecord 模型,但它们使导入更清晰。您仍然需要按照我上面的建议设置您的 Neo4j 模型。
我是 neo4apis-activerecord
和 neo4j
/neo4j-core
宝石的维护者之一,很高兴在这里或 Gitter 上回答任何其他问题
我正在从 Postgres 迁移到 Neo4j,我试图显示我的 Neo4j 查询的结果是部分的。
home_controller.rb
def index
@products = Product.as(:p).where(featured: True).limit(12).pluck(:p)
respond_with(@products)
end
index.html.erb
<div class="row">
<div id="products">
<%= render partial: "/products/product_display", collection: @products, as: :product, locals: { product_class: "col-lg-4 col-md-4 col-sm-4 product" } %>
</div>
</div>
_product_display.html.erb
:
<div class="product-title">
<h5><%= link_to product.product_name, product_detail_path(product) %></h5>
</div>
:
我似乎遇到的问题是 returns 以下内容:
[#<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>, #<Product>]
我得到:
undefined method `product_name' for #<Product>
我确定这只是掌握对 Rails 的基本理解的一部分,但使用 Postgres 没问题。
我是新手,希望得到一些帮助。
我猜您没有为 product_name
分配 属性。由于 Neo4j 是无模式的,它不能像 ActiveRecord 那样从数据库中读取列列表。如果你这样做会怎样?
class Product
include Neo4j::ActiveNode
property :product_name
end
property
方法设置 product_name
和 product_name=
方法,这些方法设置 属性 用于持久化。
对于迁移,如果您已经设置了 ActiveRecord 模型,您应该检查这个项目:
https://github.com/neo4jrb/neo4apis-activerecord
它不需要 ActiveRecord 模型,但它们使导入更清晰。您仍然需要按照我上面的建议设置您的 Neo4j 模型。
我是 neo4apis-activerecord
和 neo4j
/neo4j-core
宝石的维护者之一,很高兴在这里或 Gitter 上回答任何其他问题