He instalado Diseñar y ahora quiero quitarlo, incluidos todos los archivos que ha generado. ¿Cómo puedo hacer eso?

  • Creo que usted necesita para ejecutar un generador para Idear para crear los archivos en su directorio, para empezar. Por lo tanto, usted debe ser capaz de ejecutar por ejemplo,rails destroy devise:views . ¿Has probado ya?
  • Sé doy cuenta de que debo de sus sucursales en git
InformationsquelleAutor krn | 2011-07-26

4 Comentarios

  1. 98

    Estoy buscando a resolver el mismo problema en la actualidad, y dado que este no respondió, dándole un ir =)

    Modelos

    Idear genera un User modelo, si usted instala por defecto.
    Quite las líneas de bajo devise. Esta es la forma en la mina parece.

    devise :database_authenticatable, :registerable,
             :recoverable, :rememberable, :trackable, :validatable

    En attr_accessible, usted puede quitar email, :password, password_confirmation y remember_me si ya no los necesita.

    Vistas

    Un defecto Idear instalar no generar vistas en su app carpeta. Si se ha generado primordial vistas para Concebir, usted puede quitar mediante la ejecución de rails destroy devise:views (Rails 3).

    Por lo general, todas las opiniones son almacenados en app/views/devise.

    Controladores de

    Por defecto, Diseñar no genera controladores demasiado. Si usted hizo los reemplazos, lo más probable es conocido como registrations_controller. La búsqueda de su proyecto para los controladores que heredan Devise::RegistrationsController clase.

    También, si has seguido Concebir la wiki y el mono-ed alrededor de añadir redireccionamiento de métodos, etc, mirar hacia fuera para la aplicación de métodos tales como after_sign_in_path_for, store_location etc que son para redirigir a los usuarios.

    Migraciones

    Si ha instalado Diseñar a través de sus generadores, mirar hacia fuera para una migración create_users. Si usted no lo necesita más, el uso de drop_table :users en una migración de deshacerse de él.

    Voy a asumir que la mayoría de la gente desea mantener su modelo de Usuario. Si usted está usando Idear < 2.0, las migraciones son realizadas por los ayudantes. Una vez que se retire Diseñar a partir de la Gemfile, Rails no van a entender los ayudantes de abajo y tirar errores, por ejemplo, cuando usted está tratando de ejecutar estas migraciones en otro cuadro. Estos ayudantes son:

    t.database_authenticatable
    t.recoverable  
    t.rememberable
    t.trackable
    
    t.encryptable
    t.confirmable
    t.lockable
    t.token_authenticatable # => becomes t.string :authentication_token

    Para la exacta columnas, la de abajo es la referencia a las columnas generadas por Idear.

    https://github.com/plataformatec/devise/wiki/How-To:-Upgrade-to-Devise-2.0-migration-schema-style

    La guía encima de las listas de los campos generados por Idear el uso de los ayudantes. Usted debe ser capaz de mirar a través de la lista y su modelo (por ejemplo, llamar a User en la consola), generar una migración que elimina las columnas.

    PERO…

    Es un poco lamentable que por su consistencia, tenemos que convertir la migración a no utilizar ayudantes uso de la guía de arriba, a continuación, generar una migración para eliminarlos. Esto es para la migración de la historia de la coherencia, de lo contrario cualquier persona que ejecute las migraciones podrían intentar llamar a la inexistencia de ayudantes. También, la migración a quitar los campos se espera también que los campos de estar presente.

    Alternativamente, podría ser un buen momento para aplastar las migraciones y confiar en schema.rb /structure.sql para el esquema de la fecha de estado. Incluso después de la eliminación de las migraciones, siempre se puede volver a crear tu desarrollo DB en cualquier momento usando rake db:schema:load.

    Inicializadores Regional y

    Quitar devise.rb en config/initializers y devise.en.yml en config/locales.

    Rutas

    Eliminar cualquier devise_for líneas. Estos elevará error después de la eliminación de la gema.

    Joya Archivo

    Yaay. Todos los de la cúpula, quite la línea gem 'devise' de tu gemfile.

    • Claro y bien escrito, gracias!
    • Gracias por el cumplido =)
    • Lo único que no estoy de acuerdo es la eliminación de los campos de la original de la migración. Las migraciones de existir como una especie de control de versión de la base de datos, que puede ejecutar o rollback. Debido a esto, creo que es mejor crear otra migración en la que quitar estos campos del modelo.
    • Estás totalmente a la derecha. Gracias por señalar. Era bastante noobish. Para mantener las migraciones consistente, tenemos que cambiar los originales a la normalidad Rieles de formato y, a continuación, la eliminación de ellos en otro de la migración? Alguna sugerencia para esto?
    • Muchas gracias! Hace más de 3 años más tarde y esta solución funcionó a la perfección para deshacer mi intento de usar diseñar con Rieles 5.0.0.alfa.
  2. 9

    Usar el generador para eliminar los archivos de configuración así (paso 2), de modo que todo el proceso sería (haciendo referencia a las respuestas anteriores):

    1. Quitar la tabla: rake db:rollback VERSION=<insert the version number of the migration>
    2. Eliminar la configuración: rails destroy devise:install
    3. Quitar su modelo de Usuario: rails destroy devise User (reemplazar «Usuario» con el nombre de su modelo)
    4. Quitar las referencias a concebir en sus rutas.rb, gemfile, controlador de archivos, y ver los archivos como los siguientes, si los usaste, una vez más, la sustitución de «usuario» con el nombre del modelo):
      • devise_for (rutas.rb)
      • joya ‘diseñar’ (gemfile)
      • before_action :authenticate_user! (controladores)
      • user_signed_in? (controladores, vistas)
      • current_user (controladores, vistas)
      • user_session (controladores, vistas)
  3. 2

    En mi caso he tenido dos modelos de Usuario y Admin y yo me quedo con la de Diseñar, pero tuve una colisión con el nombre del tema con ActiveAdmin que me obliga a quitar el Admin modelo. Pero debido a que hay tantas referencias a la Administración en diseñar, tuve que tomar los pasos a continuación. Creo que las respuestas a la pregunta original, por encima también, aunque. Creo que la manera correcta de hacerlo es:

    1.Encuentra la elaboración de la migración para el modelo de usuario y el rodar de nuevo [IMPORTANTE: SI usted NO desea eliminar el usuario de la tabla asociada a Idear, a continuación, OMITA ESTE PASO]:

    rake db:rollback VERSION=<insert the version number of the migration>

    ejemplo:
    rake db:rollback VERSION:20110430031806

    2.Ejecute este comando para eliminar Idear y los archivos asociados.
    rails destroy devise Admin (si el Admin es el nombre de la modelo con las cuentas de usuario).

    Esto produce la siguiente salida:

    invoke  active_record
      remove    db/migrate/20110430031806_devise_create_admins.rb
      remove    app/models/admin.rb
      invoke    test_unit
      remove      test/unit/admin_test.rb
      remove      test/fixtures/admins.yml
       route  devise_for :admins

    3.Para eliminar completamente Concebir, usted necesita para eliminar todas las referencias a ella en sus modelos, controladores y vistas. Este es el trabajo manual. La respuesta anterior proporciona buenos detalles para encontrar esta información antigua, pero estaba incompleto para mis propósitos. Espero que esto ayude a alguien más.

  4. 1

    He encontrado daemonsy la respuesta de ser muy útil. Aquí están algunas otras cosas a considerar cuando usted hace esto.

    Sustitución De Idear

    1. Si va a reemplazar a Diseñar con su propia autenticación, recomiendo este Railscast: La autenticación desde Cero (revisado) (requiere suscripción, pero es el mejor $9/mes puede pasar).
    2. Y este Railscast (no requiere suscripción) puede ayudar con un enlace «contraseña olvidada» y la opción «recordarme» (cosas Idear ofrece fuera de la caja, pero de que se puede construir muy fácilmente): Acuérdate de Mí & Restablecer Contraseña

    Pruebas

    1. Antes de hacer esto, te recomiendo que ejecuta todas las pruebas para asegurarse de que está pasando.
    2. Después de quitar Concebir, su autenticación de las pruebas depende probablemente no, así que el plan de pasar algún tiempo en corregir su defecto pruebas. Esta es una buena cosa, porque le ayudará a ver qué cosas «rompió» cuando se ha quitado de Idear.
    3. Asegúrese de verificar que su prueba de ayudantes también. La mayoría de mis ayudantes en /spec/spec_helper.rb. De hecho, la mayoría de mis fallando pruebas comenzó a pasar una vez que se han actualizado los métodos en spec_helper.rb (por ejemplo, «login_user»).

Dejar respuesta

Please enter your comment!
Please enter your name here