Estou trabalhando na parte de upload de arquivo de um aplicativo Rails. Diferentes tipos de arquivos são tratados de maneira diferente pelo aplicativo.
Quero fazer uma lista de permissões de certas extensões de arquivo para verificar os arquivos carregados e ver onde eles devem ir. Todos os nomes de arquivo são strings.
Preciso de uma maneira de verificar apenas a parte da extensão da string do nome do arquivo. Os nomes dos arquivos estão todos no formato de "some_file_name.some_extension".
ruby-on-rails
ruby
Bryan Cosgrove
fonte
fonte
"file_with_no_extension".split('.').last
?tar.gz
,tar.bz2
.File.extname("example.png").downcase
para garantir que a extensão não esteja em maiúsculasUse o
extname
método da classe FileVocê também pode precisar de
basename
métodofonte
Tópico bastante antigo, mas aqui está a maneira de se livrar do ponto separador de extensão e possíveis espaços finais:
Exemplos:
fonte
Não seria mais fácil fazer isso para se livrar do separador de extensão?
fonte