Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
git-testing
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
seti
git-testing
Commits
e637b364
Commit
e637b364
authored
Sep 30, 2020
by
Angello Torres
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Video 33
parent
86fab311
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
119 additions
and
10 deletions
+119
-10
UserController.php
prueba/app/Http/Controllers/UserController.php
+32
-3
create.blade.php
prueba/resources/views/users/create.blade.php
+25
-5
edit.blade.php
prueba/resources/views/users/edit.blade.php
+53
-0
index.blade.php
prueba/resources/views/users/index.blade.php
+1
-0
show.blade.php
prueba/resources/views/users/show.blade.php
+1
-1
web.php
prueba/routes/web.php
+7
-1
No files found.
prueba/app/Http/Controllers/UserController.php
View file @
e637b364
...
...
@@ -73,10 +73,14 @@ class UserController extends Controller
*/
$data
=
request
()
->
validate
([
'name'
=>
'required'
,
// 'email' => '',
// 'password' => ''
,
'email'
=>
'required|email|unique:users,email'
,
// Con | puedes tener más de una regla, o pasando un array ['required', 'email', '...']
'password'
=>
[
'required'
,
'min:6'
]
,
],
[
'name.required'
=>
'El campo "Nombre del usuario" es requerido'
'name.required'
=>
'El campo "Nombre del usuario" es requerido'
,
'email.required'
=>
'El campo "Email" es requerido'
,
'email.unique'
=>
'Otro usuario stá usando el email, este debe ser único'
,
'password.required'
=>
'El campo "Tu password" es requerido'
,
'password.min'
=>
'El campo "Tu password" debe tener al menos 6 caracteres'
,
]);
User
::
create
([
...
...
@@ -88,4 +92,29 @@ class UserController extends Controller
return
redirect
()
->
route
(
'users.index'
);
// return 'Procesando información ...';
}
public
function
edit
(
User
$user
)
{
return
view
(
'users.edit'
,
[
'user'
=>
$user
]);
}
public
function
update
(
User
$user
){
$data
=
request
()
->
validate
([
'name'
=>
'required'
,
'email'
=>
'required|email|unique:users,email'
,
// Con | puedes tener más de una regla, o pasando un array ['required', 'email', '...']
'password'
=>
[
'required'
,
'min:6'
],
],
[
'name.required'
=>
'El campo "Nombre del usuario" es requerido'
,
'email.required'
=>
'El campo "Email" es requerido'
,
'email.unique'
=>
'Otro usuario stá usando el email, este debe ser único'
,
'password.required'
=>
'El campo "Tu password" es requerido'
,
'password.min'
=>
'El campo "Tu password" debe tener al menos 6 caracteres'
,
]);
$data
[
'password'
]
=
bcrypt
(
$data
[
'password'
]);
$user
->
update
(
$data
);
return
redirect
()
->
route
(
'user.show'
,
[
'user'
=>
$user
]);
}
}
prueba/resources/views/users/create.blade.php
View file @
e637b364
...
...
@@ -5,8 +5,10 @@
@
section
(
'content'
)
<
h1
>
Crear
usuario
</
h1
>
<!--
Saber
si
se
tiene
algún
error
enel
formulario
-->
{{
--
Saber
si
se
tiene
algún
error
enel
formulario
--
}}
{{
--
@
if
(
$errors
->
any
())
<!--
La
variable
$errors
toma
TODOS
los
errores
-->
<
div
class
="
alert
alert
-
danger
">
<p>Por favor corrige los siguiente errores:</p>
<ul>
...
...
@@ -16,32 +18,50 @@
</ul>
</div>
@endif
--}}
<form action="
{{
route
(
'users.store'
)}}
" method="
post
">
<!
--
{{
--
Add _token (es un input type="
hidden
" que envia info que solo nuestro serve sabe) para evitar ataques de tipo CSRF
<input type="
hidden
" name="
_token
" value="
F3hukPNtUeW02l3URoLgyM1pd4uQPWazQrSaXQ8h
">
--
>
--
}}
{
{csrf_field()}
}
<!
--
{{
--
Para desactivar el csrf_field() se debe ir a /app/Http/kernel.php
Por la línea 36 aprox. \App\Http\Middleware\VerifyCsrfToken::class
--
>
--
}}
<div class="
form
-
group
">
<label for="
name
">Nombre del usuario: </label>
<input type="
text
" class="
form
-
control
" name="
name
" id="
name
" placeholder="
Nombres
apellidos
" value="
{{
old
(
'name'
)
}}
">
@if(
$errors->any
() &&
$errors->has
('name')) {{-- Toma la variable
$errors
y mira si tiene un error en la clave 'name'--}}
<div class="
alert
alert
-
danger
">
<p>{{
$errors->first
('name') }}</p>
</div>
@endif
</div>
<div class="
form
-
group
">
<label for="
email
">Email:</label>
<input type="
email
" class="
form
-
control
" name="
email
" id="
email
" placeholder="
usuario
@
example
.
com
" value="
{{
old
(
'email'
)
}}
">
@if(
$errors->any
() &&
$errors->has
('email')) {{-- Toma la variable
$errors
y mira si tiene un error en la clave 'name'--}}
<div class="
alert
alert
-
danger
">
<p>{{
$errors->first
('email') }}</p>
</div>
@endif
</div>
<div class="
form
-
group
">
<label for="
passwords
">Tu password</label>
<input type="
password
" class="
form
-
control
" name="
password
" id="
passwords
" placeholder="
Mayor
a
6
caracteres
">
@if(
$errors->any
() &&
$errors->has
('password')) {{-- Toma la variable
$errors
y mira si tiene un error en la clave 'name'--}}
<div class="
alert
alert
-
danger
">
<p>{{
$errors->first
('password') }}</p>
</div>
@endif
</div>
<button class="
btn
btn
-
primary
" type="
submit
">Crear usuario</button>
...
...
prueba/resources/views/users/edit.blade.php
0 → 100644
View file @
e637b364
@
extends
(
'layout'
)
@
section
(
'title'
,
"Editar usuario"
)
@
section
(
'content'
)
<
h1
>
Editar
usuario
</
h1
>
<
form
action
=
"
{
{route('users.update')}
}
"
method
=
"post"
>
{{
method_field
(
'PUT'
)
}}
{{
--
Método
de
laravel
,
que
permite
realizar
una
llamada
,
por
medio
del
formulario
,
al
método
PUT
--
}}
{{
csrf_field
()}}
<
div
class
="
form
-
group
">
<label for="
name
">Nombre del usuario: </label>
<input type="
text
" class="
form
-
control
" name="
name
" id="
name
" value="
{{
old
(
'name'
,
$user
->
name
)
}}
">
@if(
$errors->any
() &&
$errors->has
('name'))
<div class="
alert
alert
-
danger
">
<p>{{
$errors->first
('name') }}</p>
</div>
@endif
</div>
<div class="
form
-
group
">
<label for="
email
">Email:</label>
<input type="
email
" class="
form
-
control
" name="
email
" id="
email
" value="
{{
old
(
'email'
,
$user
->
email
)
}}
">
@if(
$errors->any
() &&
$errors->has
('email'))
<div class="
alert
alert
-
danger
">
<p>{{
$errors->first
('email') }}</p>
</div>
@endif
</div>
<div class="
form
-
group
">
<label for="
passwords
">Tu password</label>
<input type="
password
" class="
form
-
control
" name="
password
" id="
passwords
" placeholder="
Mayor
a
6
caracteres
">
@if(
$errors->any
() &&
$errors->has
('password'))
<div class="
alert
alert
-
danger
">
<p>{{
$errors->first
('password') }}</p>
</div>
@endif
</div>
<button class="
btn
btn
-
primary
" type="
submit
">Actualizar usuario</button>
</form>
<p>
<a href="
{{
route
(
'users.index'
)
}}
">Regresar al listado de usurios</a>
</p>
@endsection
prueba/resources/views/users/index.blade.php
View file @
e637b364
...
...
@@ -24,6 +24,7 @@
con
rutas
(
name
),
estas
estan
definidas
en
routes
/
web
.
php
-->
<
a
href
=
"{{ route('users.show', ['id' =>
$user->id
]) }}"
>
Ver
detalle
</
a
>
<
a
href
=
"{{ route('users.edit', ['id' =>
$user->id
]) }}"
>
Actualizar
usuario
</
a
>
</
li
>
@
empty
<
p
>
No
hay
usuarios
registrados
</
p
>
...
...
prueba/resources/views/users/show.blade.php
View file @
e637b364
@
extends
(
'layout'
)
@
section
(
'title'
,
"
U
suario
{
$user
->
id
}
"
)
@
section
(
'title'
,
"
Detalle u
suario
{
$user
->
id
}
"
)
@
section
(
'content'
)
<
h1
>
Usuario
#{{ $user->id }}</h1>
...
...
prueba/routes/web.php
View file @
e637b364
...
...
@@ -20,7 +20,7 @@ Route::get('/', function () {
Route
::
get
(
'/usuarios'
,
'UserController@index'
)
->
name
(
'users.index'
);
Route
::
get
(
'/usuarios/
detalle/
{id}'
,
'UserController@show'
)
Route
::
get
(
'/usuarios/{id}'
,
'UserController@show'
)
->
where
(
'id'
,
'[0-9]+'
)
->
name
(
'users.show'
);
// Rutas par la creación de usuarios - Métodos get / post
...
...
@@ -36,3 +36,9 @@ Route::post('/usuarios/crear', 'UserController@store')
->
name
(
'users.store'
);
Route
::
get
(
'/saludo/{name}/{nickname?}'
,
'welcomeUserController'
);
// Ruta para la edición del usuario, carga los datos
Route
::
get
(
'/usuarios/{user}/editar'
,
'UserController@edit'
)
->
name
(
'users.edit'
);
// Ruta para la actualzación en DB de los datos
Route
::
put
(
'/usuarios/{user}'
,
'UserController@update'
)
->
name
(
'users.update'
);
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment