Mini0n Posted October 4, 2013 Share Posted October 4, 2013 Ando a namorar o Laravel há uns tempos e entretanto acho que vou começar um projecto com ele e queria saber se alguém daqui usa Laravel e se sim, se conhecem bons sites para um gajo ver tutoriais e boas práticas (mais boas práticas que tutoriais :P) Ainda hoje me deparei com o problema de não saber onde colocar a parte da autenticação. Num controller próprio? No home? As routes, a melhor prática é chamar os resourceful controllers? Tenho andado pelo Nettuts/Tutsplus, que o Jeffrey Way é grande viciado no Laravel e gosto bastante. Depois também já vi uns quantos tutoriais no YouTube mas ainda há muita gente a usar o Laravel 3 e depois há merdas que mudam para o 4 e eu fico atrofiado. :Y: Link to comment Share on other sites More sharing options...
DAGC Posted October 8, 2013 Share Posted October 8, 2013 Ora cá estou eu... Mini, tu ignora os resouceful controllers, isso é bom se quiseres programar um backoffice. Geralmente faço assim, divido o website em blocos e crio os controllers, resumindo, imagina que tens um website que tens uma landingpage de apresentação de um produto, tens login e etc, e depois dentro do login tens uma àrea de gestão. Faço um LandingPage controller (onde meto tudo que diga respeito à parte pre-auth, crio um metodo showHome por exemplo), um AuthController (onde ficam o showSignUp, doSignUp, etc...) e um AppController (imaginando que é uma coisa simples que não quero dividir em vários, onde coloco os metodos da aplicação pós-login). Basicamente não tens grandes regras, o Laravel ao contrário de outras frameworks tens muita liberdade em como fazeres as coisas e organizares. Basicamente fazes como te der mais jeito. Exemplo... podes fazer um site se quiseres todo no ficheiro de routes! Muita atenção ás relações nos models e vê bem como usar, por exemplo: $user->houses // isto é o array de classes do Model House $user->houses() // isto é o objecto relação para trabalhares, por exemplo $user->houses()->take(4) ou usares um "where" //usares este acima num @foreach dá stress por exemplo Uma boa prática, sempre que declares relações tem bem a atenção de criares as relações inversas, tem também algum cuidado na ordem dos nomes das pivot tables, aquilo usa ordem alfabética para automatizar o processo. Como te disse por PM, se quiseres manda-me por PM o teu contacto skype/msn, whatever que te ajudo se precisares de algo. E até te passo o livro do Taylor, do "subdito" e doutro gajo. Sorry pela resposta tardia... qualquer coisa apita ;) Uma coisa, tens uma cena de Autenticação que podes dar uma olhadela chamada Sentry, é feita por um Tuga, é bastante engraçado, faz muita coisa, mas usa apenas se fizer apenas exactamente o que queres, porque alterares alguns comportamentos fica complicado. Mas é fixe e é uma grande ajuda para projectos que tenhas de trabalhar muito com permissões e grupos de utilizadores. 1 Link to comment Share on other sites More sharing options...
Mini0n Posted October 9, 2013 Author Share Posted October 9, 2013 Pois, os resourceful é mesmo porque estou a tratar de um backoffice. CRUD com força. :Y: Já vi que também usas o doLogin, showLogin, etc. Nunca me habituei a isso e ainda trofio um bocado com esses termos. Também já reparei que a liberdade disto é algo de fantástico. E sim, fazer tudo no routes.php também já vi que dá. Nos exemplos do Jeff Way, o gajo faz muito disso, para mostrar esta ou aquela funcionalidade. Quanto aos models e relações, é mais complicado do que eu pensava, ou melhor, estou a ter mais stress do que pensava que ia ter, mas o processo também me é automatizado a um nível que não sabia ser possível. Para já, e relativamente à PM que te mandei, já resolvi a coisa. Fez-se um click e cheguei lá (essa do $x->y != $x->y(), por exemplo). Vou instalar o Skype e entretanto mando-te o meu contacto. :Y: Fica a thread para caso mais alguém necessite disto ou alguma dúvida mais geral. Link to comment Share on other sites More sharing options...
DAGC Posted October 9, 2013 Share Posted October 9, 2013 Alerta... cuidado como método sync em relações N-N... já me lixei por causa disso, o que não passares nesse array ele apaga Tenta usar o attach sempre. 1 Link to comment Share on other sites More sharing options...
Mini0n Posted October 9, 2013 Author Share Posted October 9, 2013 Ainda não cheguei a essa fase. Mas fica a nota :P Also, uma coisa que não estou a perceber é o eager loading. Faço $cena = Cena::with('Outracena')->get(); E depois na view @foreach ($cena as $c) {{ $c->outracena->name }} @endforeach E o gajo faz-me as queries: SELECT * FROM cena SELECT * FROM outracena WHERE outracena.id IN (...) E depois repete-me a última query por cada uma das rows que encontra... não era suposto não fazer isso (uma vez que já tem tudo o que precisa do eager loading)? O que estou a fazer mal? Link to comment Share on other sites More sharing options...
DAGC Posted October 9, 2013 Share Posted October 9, 2013 Mini... "Outracena", não deveria ser "outracena"? No with metes o nome da relação... neste caso... "outracena". 1 Link to comment Share on other sites More sharing options...
Mini0n Posted October 9, 2013 Author Share Posted October 9, 2013 (edited) Sim, claro. :facepalm: Ali fica o nome da function que define a relação, que neste caso é 'outracena'. :y: Eu estava a por o nome da classe. :facepalm: Já bomba nas horas as queries. :clap: Edited October 9, 2013 by Mini0n 1 Link to comment Share on other sites More sharing options...
DAGC Posted October 9, 2013 Share Posted October 9, 2013 São coisas que com o tempo te vais habituar ;) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now