JSONAPI-Resources / JSONAPI-Resources/jsonapi-resources

Neo4j ORM Issues (non ActiveRecord)

Abierto
#796 5 comentarios 3 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Lenguaje dominante
Ruby
Estrellas
2.3k
Forks
546
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Hi. I'm working on a rails project using the Neo4j ORM which tries to mimic ActiveRecord, but doesn't use ActiveRecord. GET-ing things works fine, but as soon as I want to POST I get errors.

I've started using 0.8.0.beta1 to overcome the ActiveRecordOperationsProcessor issues fixed in #192, but have run into a new error uninitialized constant JSONAPI::ActsAsResourceController::ActiveRecord in ActsAsResourceController line 84

As I was writing this I just realised I can monkey patch with the following, but this probably isn't a good long term solution. It seems to be working with very minimal testing though.

module JSONAPI
  module ActsAsResourceController

    def transaction
      lambda { |&block|
        Neo4j::Transaction.run do |tx|
          block.yield
        end
      }
    end

    def rollback
      lambda {
        fail tx.mark_failed
      }
    end

  end
end

Does anyone have any advice on this situation? Is this an issue for other non ActiveRecord ORM's.

Thanks for your help.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comienza en lib/jsonapi/acts_as_resource_controller.rb, línea 84, e inspecciona cómo la transacción y el rollback dependen de ActiveRecord. Reproduce un POST usando el Neo4j ORM y luego compara el comportamiento transaccional del controlador con el monkey patch mostrado en el issue. Se considera terminado cuando las solicitudes POST funcionan sin hacer referencia a una constante de ActiveRecord.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
neo4j, rails, ruby
Área
api, backend, databases
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.