Начало работы с Neo4j и Ruby - ошибка: Neo4j :: DeprecatedSchemaDefinitionError в Books # index - id_property является корнем проблемы - PullRequest
0 голосов
/ 18 февраля 2019

Начало работы с Neo4j и Ruby

https://neo4j.com/developer/ruby-course/

Я следовал этой инструкции.

rails new asset_portal -m http://neo4jrb.io/neo4j/neo4j.rb -O
cd asset_portal
rake neo4j:install[community-latest]
rake neo4j:start

Я установил проекты и запустил сервер neo4j.

А затем я следовал инструкции по созданию эшафота для пользователя, ресурса, категории и книги.

И затем я изменил модель книги на enter image description here

как указано.

enter image description here

И я тоже изменил это в соответствии с инструкциями.

Теперь я запускаю миграцию и запускаю сервер.

rake neo4j:migrate
rails s
open http://localhost:3000/books

Я получил ошибку миграции

Neo4j::DeprecatedSchemaDefinitionError in Books#index
Some schema elements were defined by the model (which is no longer supported), but they do not exist in the database.  Run the following to create them if you haven't already:

rake neo4j:generate_schema_migration[constraint,Book,isbn]


And then run `rake neo4j:migrate`

Я следовал инструкции и запускаю

rake neo4j:generate_schema_migration[constraint,Book,isbn]
rake neo4j:migrate

Я все еще получаю ту же ошибку.

Я нашел ссылку на git neo4j, в которой говорится о той же ошибке, https://github.com/neo4jrb/neo4j/issues/1356. Там написано, что "id_property" - корень проблемы.Но я не смог получить четкий ответ, что мне делать из этой темы.

И я следую инструкции из руководства Neo4j, чтобы изменить модель книги на

id_property :isbn

Кто-то еще должен уже работатьв эту ошибку и решил эту проблему.(Возможно, руководство Neo4j устарело).Пожалуйста, помогите.

Я запускаю это на Mac.И я только что обновил rake, ruby ​​на своем Mac, прежде чем начал этот проект.

$ rails --version
Rails 5.2.2

$ ruby --version
ruby 2.6.1p33 (2019-01-30 revision 66950) [x86_64-darwin17]

1 Ответ

0 голосов
/ 20 февраля 2019

Я удалил эту строку из руководства (руководство устарело)

id_property :isbn

из инструкции.

Вместо этого я использую

rake neo4j:generate_schema_migration[constraint,Book,isbn]

Это сделает

- CONSTRAINT ON ( book:Book ) ASSERT book.isbn IS UNIQUE

Перед тем, как запустить

rake neo4j:migrate

Это должно решить проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...