Flávio Silveira Programação & Desenvolvimento

  • BLOG
  • SOBRE

CodeIgniter ‘metido’ a Ruby on Rails. (ciforms.sh)

April 16th, 2009  |  Published in CodeIgniter, Php, Programação em geral, Shell Script  |  2 Comments

Salve Galera…

Vocês sabem, muitos projetos em sistemas são similares, sempre aquela mesma coisa…Listar, Inserir, Editar e Remover.
Isso me levou a querer criar algo para facilitar tudo isso.

Vendo meu Amigo Fábio Tomio mandando ver no Ruby On Rails, ele me mostrou que criava um cadastro (Listar, Inserir, Editar e Remover) muito facilmente, com apenas um comando no terminal, usando a funcão Scaffold se não me engano.

Inspirado nisso, resolvi fazer um Shell Script que geraria todas as views, controller e model prontas com essas opções.

Introdução

  • Chamei de CiForms.
  • Essa é uma versão de teste. É a versão Zero.
  • Fiz esse script como estudo. Não tenho pretensões de lucros, suporte, nem nada com ele.

Porque não usar o Scaffolding do CodeIgniter

  • O Scaffolding do CodeIgniter não é aproveitável para o desenvolvimento de um projeto, ele não segue o padrão MVC do Framework. Como consta no manual, ele é apenas uma maneira de popular rapidamente uma tabela.


Limitações dessa versão

  • É um shell Script. Vai rodar apenas em base Unix. Fiz testes no Linux distribuição Ubuntu 8.10 e no Leopard MAC OSX 10.5.6. Não vai rodar no Windows.
  • Por enquanto está rodando apenas em DataBase MySQL, Tive problemas com a função listFields com outros bancos.
  • Você deve estar com o módulo Rewrite do apache instalado, e usando o .htaccess como indicado no manual do CodeIgniter para fazer suas URL amigáveis, senão a navegação vai ficar super esquisita.
  • Você deverá chamar o script de dentro da sua pasta Application e as pastas Controllers, Models e Views não podem ter sido renomeadas.

Como Usar

  • É bem simples. Basta chamar o script, passando o nome da tabela e em seguida o de sua PK.
  • O script tem uma opção para ajuda (-h ou –help) e para verificar a versão (-V ou –version)

Exemplo prático

Baixe o Sheel Script clicando aqui.

É necessário colocar o sheel dentro da pasta applications.
picture-1

Em seguida Vamos executá-lo no terminal.
Para chamar o script, apontamos o caminho atual (./) e depois seu nome (ciforms.sh).
Repare que se não passar os parâmetros corretos ele não irá executar e irá lhe oferecer o help.
picture-8

Colocando corretamente os parâmetros (Nome da tabela e em seguida a Primary Key da tabela)
picture-3

O Script é executado e você já pode conferir nas pastas que foram criados os arquivos .php.
Um controller, um model, e três views.
picture-4

Basta agora chamar no browser o seu site, em seguida o nome da tabela.
Aqui está a listagem, onde você tem o Id do registro e os opções para Editar ou Remover.
picture-5

Após Editar você volta para a listagem.
picture-6

Após clicar em remover, você repara na listagem com um registro a menos.
picture-7

Fique a vontade para abrir o código e conferir como são feitas as chamadas e tudo mais. O Shell vai gerar tudo em uma linha só. Se você usa o Eclipse ou o Aptana como editor basta dar um Ctrl+Shift+F para identar tudo automaticamente.

Os Arquivos php não contam com praticamente nenhum comentário, pois tive problemas do Shell em relação a eles.

Devo mexer em breve nele para funcionar com Postgres. Até lá, um abraço a todos.

Compartilhe
  • Print
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • LinkedIn
  • Live
  • MySpace
  • PDF
  • RSS
  • Twitter
  • email

Posts Relacionados

  • Habilitando Layouts no CodeIgniter (Template Engine) – Parte 2
  • CodeIgniter: Use a Global $_SERVER no config para ganhar dinamismo com subdomínios.
  • Habilitando Layouts no CodeIgniter (Template Engine) – Parte 1

Comentários

Feed
  1. beto disse:

    May 11th, 2009 at 11:52 (#)

    Já tinha visto algo semelhante, se nao me engano chamava-se Igniter, mas tbm nao tenho certeza.

    gosto do codeigniter, é bem simples de usar e todo mundo consegue aprender com facilidade, isso ajuda muito quando temos que explicar a alguem como usar o framework.

    Parabens pelo script, mas tarde vou baixá-lo e testar.

    []´s

  2. Gustavo disse:

    May 19th, 2009 at 07:14 (#)

    Parabéns pelo artigo.
    Por que não transformar isso em um .PHP que gere os arquivos?
    passaríamos via GET o tabela e a key, e o resto o script faz.

Deixe um comentário

Flávio Silveira

Programação & Desenvolvimentominha foto

Rss Logo Twitter Logo

Blogroll

  • Aurélio Marinho Jargas
  • Fábio Tomio
  • Mozart Petter
  • Renie Siqueira
  • Willian Rodriguez

Tags & Categorias

add-ons Apache apple arrays Banco de Dados CodeIgniter complementos Configuração PHP debug erro 500 erros de servidor facilidade formatação via sql Forms framework php geração de cadastros Geração de formulários Internet Explorer não salva session iphone ipod touch Layouts mozart petter mozilla firefox multiple site múltiplos sites com codeIgniter Php postgres Programação em geral reestruturando CodeIgniter Shell smarty SQL Template engine Tempo de sessão codeIgniter Apache (1)
Banco de Dados (3)
Browsers (2)
CodeIgniter (7)
IPhone – Desenvolvimento (2)
JavaScript (1)
Php (9)
Programação em geral (9)
Programação SQL (3)
Screencast (1)
Servidor (1)
Shell Script (1)

WP Cumulus Flash tag cloud by Roy Tanck requires Flash Player 9 or better.



©2010 Flávio Silveira
Powered by WordPress adapted of Gridline Lite of author Graph Paper Press.