Olá Mundo!
Entrarei em detalhes sobre os primeiros passos que dei para ter uma base sólida para o framework Laravel 4.
Confira andrew13 / Laravel-4-Bootstrap-Starter-Site !
Fiquei muito feliz quando pesquisei isso no Google ^^
Eu tinha visto uma tonelada de tutoriais no Laravel 4 e estava prestes a começar a codificar meu caminho através de um sistema de autenticação, com funções, permissões, gerenciamento de administrador de usuários e um gerenciador de blog / produtos / bananas / item.
Neste caso, este bootstrap inicial do Laravel 4 tem tudo!
Confira minha dica anterior onde postei um script bash para instalar automaticamente o Laravel 4, aqui está o mesmo script modificado para o site de bootstrap do Laravel 4:
#!/bin/bash
# Install laravel 4 bootstrap site and configure
# Call scriptname.sh projectname
# The projectname parameter will be the name of the folder where laravel 4 will be installed.
#
# This script assumes that your webroot is in ~/www/.
#
# Check the path for your commands. It is better to use full paths in scripts.
#
# Read the code once and make sure everything is the same on your system!
echo -e "e[1;34mInstalling Laravel 4 Bootstrap Site into e[1;31m$HOME/www/$1/e[0m"
cd $HOME/www/
echo -e "e[1;34mDownloading master branch from e[1;34mgit://github.com/andrew13/Laravel-4-Bootstrap-Starter-Site.gite[0m"
/usr/bin/git clone git://github.com/andrew13/Laravel-4-Bootstrap-Starter-Site.git $1
cd $1
echo -e "e[1;34mSetting permissions to e[1;31m$HOME/www/$1/app/storagee[0m"
# Make the app/storage directory writable
chmod -R 777 app/storage
# Check if composer is installed globally, if not install it locally.
if hash composer 2>/dev/null; then
echo -e "e[1;34mComposer is installed globally.e[0m"
/usr/local/bin/composer install
else
echo -e "e[1;34mInstalling Composer into e[1;31m$HOME/www/$1/e[0m"
/usr/bin/curl -s https://getcomposer.org/installer | php
composer.phar install
fi
echo -e "e[1;34mGenerating application key.e[0m"
php artisan key:generate
echo -e "e[1;34mCleaning up the git.e[0m"
rm -rf .git*
echo -e "e[1;34mLaravel 4 Bootstrap Site installed in e[1;31m$HOME/www/$1/e[0m"
exit 0
Agora você precisa editar seu arquivo app / config / database.php , mas seria mais sensato primeiro configurar os ambientes e os arquivos de configuração locais.
Primeiro abra bootstrap / strat.php
E faça com que seu $ env tenha a seguinte aparência:
$env = $app->detectEnvironment(array(
'local' => array('*.local', 'VirtualMint'),
'production' => array('*.com'),
));
VirtualMint é meu hostname, pressione hostname no terminal para saber o seu. Isso permite que o artisan saiba que ele precisa procurar nos arquivos de configuração local na máquina local, então você não precisa digitar php artisan –env = local toda vez.
Agora crie duas novas pastas em sua pasta app / config: local e produção
Copie o database.php e mail.php padrão para essas pastas, se você começar a mudar as coisas para app.php também copie lá antes de qualquer mudança e faça as mudanças nas pastas corretas, local ou de produção .
Edite app / local / database.php e mail.php para as configurações do servidor local e talvez use um gmail para mail.php . Isso é o que estou tentando, veremos se funciona para dev local 🙂
Em seguida, é hora de migrar e semear seus bancos de dados:
php artisan migrate
php artisan db:seed
Você também precisa se certificar de que a chave de criptografia do aplicativo está definida ( php artisan key: generate ) e que a pasta do aplicativo / armazenamento pode ser gravada pelo servidor ( chmod -R 775 app / storage ou 777 se isso não funcionar).
O script que postei já faz chmod -R 777 para ter certeza de que funciona. Não se preocupe em fazer isso em um host local. Gostaria de ter certeza de que chmod -R 755 funciona no seu servidor de produção, caso contrário, isso significaria que as permissões não estão definidas corretamente.
Abra o seu navegador e o esqueleto do seu site deve estar instalado e funcionando!
Vá para / admin para verificar o painel de administração.
Tudo isso é muito simples, mas tenho certeza de que pode ajudar alguém e estou egoisticamente fazendo isso como uma forma de acompanhar meu progresso ^^