2012-09-13 8 views
6

estoy usando Sublime Text 2, mientras que después de Michael Hartl Ruby on Rails Tutorial.Ruby on Rails Tutorial - 5,26 - Sublime Text "No se puede guardar" nuevo archivo "spec/support/utilities.rb"

La parte específica del tutorial al que me refiero se puede encontrar en http://ruby.railstutorial.org/book/ruby-on-rails-tutorial (ctrl + F "Listado 5.26").

Soy capaz de crear el archivo de especificaciones/soporte. Sin embargo, cuando intento crear el archivo spec/support/utilities.rb, recibo el mensaje "No se puede guardar ~/rails_projects/sample_app/spec/support/utilities.rb".

¿Alguien sabe por qué esto podría ser?

alguien en el foro Sublime Text parece haber tenido el mismo problema: http://www.sublimetext.com/forum/viewtopic.php?f=3&t=8570&p=36922#p36922

+0

"Cómo guardo un archivo" realmente no es una pregunta adecuada para un sitio web para programadores profesionales. Votado para migrar a [SuperUser] (http://SuperUser.Com/). Además, esta pregunta no tiene absolutamente nada que ver con Ruby y/o Ruby on Rails. –

+0

Soy un programador profesional y encontré esto de alguna manera útil ya que ahora me estoy metiendo en los rieles, y bajo los rebeldes 10.9 estoy teniendo problemas de permiso. No los que he experimentado con laravel o nodo. – pushplaybang

Respuesta

1

para diagnosticar esta, primero averiguar si se trata de un problema en el sistema de sublime o su archivo:

  • ¿El ese archivo ya existe? Intenta buscarlo en tu sistema de archivos (sin utilizar Sublime).

  • Verifique que tiene permiso para escribir en ese archivo. Use "ls -la" en la línea de comando para mostrar los permisos del archivo.

  • ¿Puede crear y/o guardar ese archivo usando cualquier editor diferente, por ejemplo, TextMate o Notepad?

0

/no existe soporte de la especificación carpeta y sublime no creará la carpeta que falta, por lo que los errores.

Solo necesita hacer la carpeta de especificaciones/soporte, luego sublime guardará el archivo.

También recomiendo instalar el complemento AdvancedNewFile (Video of it action thanks to Jeffrey Way and NetTuts+), que puede tomar directamente desde Package Control. Crea archivos, carpetas principales si es necesario, y si intenta crear un archivo que ya existe, lo abre en su lugar.

0

Esto puede suceder si intenta crear el archivo dentro de un directorio que no existe actualmente. Por ej. Yo era incapaz de salvar

~/rails_projects/sample_app/app/views/shared/_error_messages.html.erb

a través del comando "subl" de la terminal, ya que me estaba perdiendo/shared/carpeta. Espero que ayude.

3

Este problema parece ser el resultado de permisos incorrectos o la propiedad de la carpeta. Cambie los directorios (cd) por lo que se encuentra fuera de la carpeta en la que está creando el archivo .rb y tipo:

ls -l 

Este terminales comando lista los permisos unidos a todos los archivos/carpetas en ese directorio.Si "raíz" aparece como el propietario de la carpeta, cambiar su propietario escribiendo:

sudo chown YOUR_COMP_USER_NAME FOLDER_NAME/ 

Ahora debería ser capaz de guardar archivos desde dentro de esa carpeta.

+0

cerca pero no del todo – pushplaybang

0

así que @knice casi lo tenía, me encontré con el mismo problema con el permiso al iniciar mi primer proyecto de rieles en Mavericks.

como se mencionó si se ejecuta ls -l verá sus carpetas/archivos que aparece con sus permisos

He resuelto esto cambiando la propiedad de forma recursiva con el siguiente comando desde fuera mi directorio del proyecto

sudo chown -Rv <your_username> <your_path_and_foldername> 

por ejemplo, si usted está en su carpeta en la terminal del que debiera cd .. y luego

sudo chown -Rv username ruby_proj/ 

la -R es recursivo, lo que significa que se aplicará a todos los archivos y carpetas contenidos en la carpeta que especificó, y la v después solo produce resultados detallados, mostrándole qué carpeta y qué permisos de archivos se han cambiado.

Espero que ayude a alguien más.

+0

también puede pasar el comando de shell 'whoami' en lugar de poner su nombre de usuario. – pushplaybang