Relaciones en Laravel para un proyecto básico

quería hacerles una consulta a ver si me pueden orientar.

Tengo un proyecto muy básico una landing Page que tiene un formulario que solicita nombre, apellido y email. Estos datos se guardan en la tabla registros.

A su ves un administrador que utiliza su tabla users accede a la vista administrador y ve todos los usuarios registrados.

Muy simple lo que hace este mini sistema, la orientación que necesito es respecto a poder agregar un nuevo usuario en la tabla users y que se genere su panel de administración para ver los registros que se guardan para su diseño de landing page.

Al necesitar la misma funcionalidad pero para otro proyecto lo que hice fue copiar todo como un proyecto nuevo, pero me gustaría usar el mismo proyecto con relaciones.

Me pueden orientar, tendría que hacer una relación uno a uno? y después como muestro la vista a cada usuario?

Muchas gracias, espero que se entienda mi consulta.

error al crear proyecto reactjs

npm ERR! Unexpected end of JSON input while parsing near '...,"source-map-support"'  npm ERR! A complete log of this run can be found in: npm ERR!     C:\Users\Lenovo T450\AppData\Roaming\npm-cache\_logs19-10-06T20_03_53_520Z-debug.log  Aborting installation.   npm install --save --save-exact --loglevel error react react-dom react-scripts has failed.  Deleting generated file... package.json Deleting miprimerapp/ from C:\Users\Lenovo T450 Done. 

Error en producción, luego de descargar el proyecto local y cambiar password de BBDD

He descargado por ftp un proyecto de Symfony que estaba en producción y funcionando. Luego de la descarga, en el CPanel se ha cambiado la clave de la BBDD. Por lo tanto, he actualizado el archivo “parameters.yml” con la nueva clave, y luego lo subí al servidor de producción. Desde allí no ha funcionado más el sistema en producción.

Ya hemos comprobado que la clave sea correcta, porque nos hemos conectado vía Postgresql y funciona bien. Incluso, hemos vuelto a colocar la anterior clave en la BBDD y en “parameters.yml”, pero vemos que ese no es el problema.

He intentado consultar la versión de este proyecto pero me da el siguiente error:

Parse error: syntax error, unexpected ‘?’ in ..\vendor\webinarium\datatables-bundle\src\DependencyInjection\DataTablesExtension.php on line 56

In DataTablesExtension.php line 56:

Parse Error: syntax error, unexpected ‘?’

Luego de solucionar ese error, siguen apareciendo errores en otros controladores. Lo cual no es normal, ya que en producción estaba funcionando.

Me suena que el problema tenga que ver con la versión de Symfony que utilicé para mi proyecto local (3.4) y el nuevo proyecto que acabo de descargar.

En producción, el error que obtengo es muy general: “Authentication request could not be processed due to a system problem.”. Me he fijado en el archivo “var/logs/prod.log” y los últimos errores que aparecen, se repiten desde hace más de un año. O sea que en teoría no hay ningún error que impida funcionar al sistema.

Tampoco puedo ejecutar el comando: “php bin/console cache:clear –env=prod –no-debug” porque obtengo el mismo error.

Como he comentado, el sistema funcionaba bien hasta descargarlo de forma local o el cambio de clave de la BBDD.

¿Por que me sale pagina 404 al ejecutar mi proyecto laravel?; he usado autenticación de usuarios y Middleware

¡Buenas noces!; tengo mi proyecto laravel un sistema de compras y ventas de productos en los cuales en el momento de autenticación de usuarios aparece una ventana de login.blade.php que le solicita al usuario las credenciales de la misma que son el usuario y la contraseña; cuando se ejecuta por primera vez el proyecto, ingresa normalmente con las credenciales del usuario, en la que adjunto la pantalla que sale cuando ingresa con normalidad al proyecto:

Sistema de Compras ventas - Lavarel Login - Pantalla de autenticación

En la parte del código que pide la autenticación del usuario es un archivo de mi proyecto laravel que se llama login.blade.php que esta en la carpeta /resource/js/views/auth/login.blade.php en la que adjunto el código de la misma

@extends('auth.contenido')  @section('login') <div class="row justify-content-center">       <div class="col-md-5">         <div class="card-group mb-0">           <div class="card p-4">           <form class="form-horizontal was-validated" method="POST" action="{{ route('login')}}">            {{ csrf_field() }}               <div class="card-body">               <h3 class="text-center bg-success">Compras - Ventas</h3>                             <div class="form-group mb-3{{$  errors->has('usuario' ? 'is-invalid' : '')}}">                 <span class="input-group-addon"><i class="icon-user"></i></span>                 <input type="text" value="{{old('usuario')}}" name="usuario" id="usuario" class="form-control" placeholder="Usuario">                 {!!$  errors->first('usuario','<span class="invalid-feedback">:message</span>')!!}               </div>               <div class="form-group mb-4{{$  errors->has('password' ? 'is-invalid' : '')}}">                 <span class="input-group-addon"><i class="icon-lock"></i></span>                 <input type="password" name="password" id="password" class="form-control" placeholder="Password">                 {!!$  errors->first('password','<span class="invalid-feedback">:message</span>')!!}               </div>               <div class="row">                 <div class="col-6">                   <button type="submit" class="btn btn-success px-4"><i class="fa fa-sign-in fa-2x"></i> Iniciar sesión</button>                 </div>               </div>             </div>           </form>           </div>          </div>       </div>     </div> @endsection

Que mediante un post login llama al archivo de ruta web.php que esta en la carpeta /routes/web.php

<?php  /* |-------------------------------------------------------------------------- | Web Routes |-------------------------------------------------------------------------- | | Here is where you can register web routes for your application. These | routes are loaded by the RouteServiceProvider within a group which | contains the "web" middleware group. Now create something great! | */  Route::group(['middleware' => ['guest']], function () {           Route::get('/','Auth\LoginController@showLoginForm');     Route::post('/login', 'Auth\LoginController@login')->name('login'); });  Route::group(['middleware' => ['auth']], function () {            Route::get('/main', function () {         return view('contenido/contenido');     })->name('main');      Route::group(['middleware' => ['Comprador']], function () {                   Route::get('/categoria', 'CategoriaController@index');         Route::post('/categoria/registrar', 'CategoriaController@store');         Route::put('/categoria/actualizar', 'CategoriaController@update');         Route::put('/categoria/desactivar', 'CategoriaController@desactivar');         Route::put('/categoria/activar', 'CategoriaController@activar');         Route::get('/categoria/selectCategoria', 'CategoriaController@selectCategoria');                  Route::get('/producto', 'ProductoController@index');         Route::post('/producto/registrar', 'ProductoController@store');         Route::put('/producto/actualizar', 'ProductoController@update');         Route::put('/producto/desactivar', 'ProductoController@desactivar');         Route::put('/producto/activar', 'ProductoController@activar');                  Route::get('/proveedor', 'ProveedorController@index');         Route::post('/proveedor/registrar', 'ProveedorController@store');         Route::put('/proveedor/actualizar', 'ProveedorController@update');              });      Route::group(['middleware' => ['Vendedor']], function () {          Route::get('/categoria', 'CategoriaController@index');         Route::post('/categoria/registrar', 'CategoriaController@store');         Route::put('/categoria/actualizar', 'CategoriaController@update');         Route::put('/categoria/desactivar', 'CategoriaController@desactivar');         Route::put('/categoria/activar', 'CategoriaController@activar');         Route::get('/categoria/selectCategoria', 'CategoriaController@selectCategoria');                  Route::get('/producto', 'ProductoController@index');         Route::post('/producto/registrar', 'ProductoController@store');         Route::put('/producto/actualizar', 'ProductoController@update');         Route::put('/producto/desactivar', 'ProductoController@desactivar');         Route::put('/producto/activar', 'ProductoController@activar');                  Route::get('/cliente', 'ClienteController@index');         Route::post('/cliente/registrar', 'ClienteController@store');         Route::put('/cliente/actualizar', 'ClienteController@update');          });      Route::group(['middleware' => ['Administrador']], function () {          Route::get('/categoria', 'CategoriaController@index');         Route::post('/categoria/registrar', 'CategoriaController@store');         Route::put('/categoria/actualizar', 'CategoriaController@update');         Route::put('/categoria/desactivar', 'CategoriaController@desactivar');         Route::put('/categoria/activar', 'CategoriaController@activar');         Route::get('/categoria/selectCategoria', 'CategoriaController@selectCategoria');                  Route::get('/producto', 'ProductoController@index');         Route::post('/producto/registrar', 'ProductoController@store');         Route::put('/producto/actualizar', 'ProductoController@update');         Route::put('/producto/desactivar', 'ProductoController@desactivar');         Route::put('/producto/activar', 'ProductoController@activar');                  Route::get('/proveedor', 'ProveedorController@index');         Route::post('/proveedor/registrar', 'ProveedorController@store');         Route::put('/proveedor/actualizar', 'ProveedorController@update');                  Route::get('/cliente', 'ClienteController@index');         Route::post('/cliente/registrar', 'ClienteController@store');         Route::put('/cliente/actualizar', 'ClienteController@update');                  Route::get('/rol', 'RolController@index');         Route::get('/rol/selectRol', 'RolController@selectRol');                  Route::get('/user', 'UserController@index');         Route::post('/user/registrar', 'UserController@store');         Route::put('/user/actualizar', 'UserController@update');         Route::put('/user/desactivar', 'UserController@desactivar');         Route::put('/user/activar', 'UserController@activar');         });                }); //  Route::get('/home', 'HomeController@index')->name('home');

Para esto se uso lo que se refiere a lo que son los Middleware que es una forma de filtrar las peticiones HTTP que llegan a nuestra aplicación y todo lo usuado de acuerdo al siguiente link o enlace:

Laravel – Middleware

La idea es la siguiente es que de acuerdo al rol que tiene cada usuario sea esta Administrador, Comprador, o Vendedor cargue las respectivas opciones del menú; que esto se define en un archivo que se llama principal.blade.php (el siguiente codigo)

<!DOCTYPE html> <html lang="es">  <head>     <meta charset="utf-8">     <meta http-equiv="X-UA-Compatible" content="IE=edge">     <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">     <meta name="description" content="Sistema Compras-Ventas con Laravel y Vue Js- webtraining-it.com">     <meta name="keyword" content="Sistema Compras-Ventas con Laravel y Vue Js">     <title>Proyecto</title>     <meta name="csrf-token" content="{{ csrf_token() }}">     <!-- Icons -->     <link href="css/plantilla.css" rel="stylesheet">     </head>  <body class="app header-fixed sidebar-fixed aside-menu-fixed aside-menu-hidden">   <div id="app">  <header class="app-header navbar">         <button class="navbar-toggler mobile-sidebar-toggler d-lg-none mr-auto" type="button">           <span class="navbar-toggler-icon"></span>         </button>         <!--PONER LOGO-->         <!--<a class="navbar-brand" href="#"></a>-->         <button class="navbar-toggler sidebar-toggler d-md-down-none" type="button">           <span class="navbar-toggler-icon"></span>         </button>         <ul class="nav navbar-nav d-md-down-none">             <li class="nav-item px-3">                 <a class="nav-link" href="#">Dashbord</a>             </li>                     </ul>         <ul class="nav navbar-nav ml-auto">              <li class="nav-item dropdown">                 <a class="nav-link dropdown-toggle nav-link" data-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">                     <img src="img/avatars/6.jpg" class="img-avatar" alt="admin@bootstrapmaster.com">                     <span class="d-md-down-none">usuario </span>                 </a>                 <div class="dropdown-menu dropdown-menu-right">                     <div class="dropdown-header text-center">                         <strong>Cuenta</strong>                     </div>                     <a class="dropdown-item" href=""                      onclick="event.preventDefault(); document.getElementById('logout-form').submit();">                     <i class="fa fa-lock"></i> Cerrar sesión</a>                      <form id="logout-form" action="" method="POST" style="display: none;">                                            </form>                 </div>             </li>         </ul>     </header>      <div class="app-body">          @if(Auth::check())             @if (Auth::user()->idrol == 1)                 @include('plantilla.sidebaradministrador')             @elseif (Auth::user()->idrol == 2)                 @include('plantilla.sidebarvendedor')             @elseif (Auth::user()->idrol == 3)                 @include('plantilla.sidebarcomprador')             @else              @endif          @endif          <!-- Contenido Principal -->           @yield('contenido')         <!-- /Fin del contenido principal -->     </div>       </div>      <footer class="app-footer">         <span><a href="http://www.webtraining-it.com/">webtraining-it.com</a> &copy; 2019</span>         <span class="ml-auto">Desarrollado por <a href="http://www.webtraining-it.com/">webtraining-it.com</a></span>     </footer>      <!-- Bootstrap and necessary plugins -->     <script src="js/app.js"></script>     <script src="js/plantilla.js"></script>     </body>  </html>

De acuerdo al tipo de rol del usuario va a llamar al archivo sidebarAdministrador.blade.php, sidebarComprador.blade.php, sidebarComprador.blade.php (que estan en la ruta /resources/js/views/plantilla), y estos a la vez carga el archivo contenido.blade.php (que es donde se realiza las vistas que esta en la ruta /resources/js/views/contenido (que adjunto el codigo)

@extends('principal') @section('contenido')   @if(Auth::check())             @if (Auth::user()->idrol == 1)                             <template v-if="menu==0">             <h1>Escritorio</h1>             </template>              <template v-if="menu==1">               <categoria></categoria>             </template>              <template v-if="menu==2">               <producto></producto>             </template>              <template v-if="menu==3">               <h1>Compras</h1>             </template>              <template v-if="menu==4">                 <proveedor></proveedor>             </template>                <template v-if="menu==5">               <h1>Ventas</h1>             </template>              <template v-if="menu==6">               <cliente></cliente>             </template>              <template v-if="menu==7">               <user></user>             </template>              <template v-if="menu==8">               <rol></rol>             </template>              @elseif (Auth::user()->idrol == 2)             <template v-if="menu==0">             <h1>Escritorio</h1>             </template>              <template v-if="menu==1">               <categoria></categoria>             </template>              <template v-if="menu==2">               <producto></producto>             </template>              <template v-if="menu==5">               <h1>Ventas</h1>             </template>              <template v-if="menu==6">               <cliente></cliente>             </template>             @elseif (Auth::user()->idrol == 3)             <template v-if="menu==0">             <h1>Escritorio</h1>             </template>              <template v-if="menu==1">             <categoria></categoria>             </template>              <template v-if="menu==2">             <producto></producto>             </template>              <template v-if="menu==3">             <h1>Compras</h1>             </template>              <template v-if="menu==4">               <proveedor></proveedor>             </template>             @else              @endif  @endif     @endsection

(Nota: No adjunte los codigos de los archivos sideBarAdministrador.blade.php, sideBarComprador.Blade.php, sideBarVendedor.Blade.php) para no hacer tanta larga la pregunta)

Al ejecutar el proyecto por 2da. vez me aparece esta pantalla con este mensaje de error que adjunto pantalla:

proyectolaravel Page 404 no existe

Proyectolaravel Page 404 no existe error

Mi pregunta es la siguiente: ¿Porqué me sale este mensaje de error si el archivo home.blade.php si existe en mi proyecto, esta en la raíz de mi proyecto es decir que una vez que se autentica un usuario tiene que bien mostrar un mensaje que esta autenticado?; adjunto codigo del archivo home.blade.php

@extends('layouts.app')  @section('content') <div class="container">     <div class="row justify-content-center">         <div class="col-md-8">             <div class="card">                 <div class="card-header">Dashboard</div>                  <div class="card-body">                     @if (session('status'))                         <div class="alert alert-success" role="alert">                             {{ session('status') }}                         </div>                     @endif                      You are logged in!                 </div>             </div>         </div>     </div> </div> @endsection

Su ayuda con esta consulta

¿Alguien sabe porque al tratar de crear un nuevo proyecto de laravel surge esto?

Estaba tratando de crear un nuevo proyecto de laravel con el comando laravel new NombreDelProyecto y me surgio esto.

¿Alguna idea de como arreglar esto o porque ocurre?

Error al usar el comando laravel new

Nota: solamente puedo crear los proyectos desde composer composer create-project --prefer-dist laravel/laravel NombreDelProyecto, pero quisiera saber porque pasa esto.

visual estudio vs code no muestra carpeta .git en el proyecto

estoy probando git y tengo un problema, creo una carpeta para un proyecto que se llama “calendario” cuando inicio git me crea dentro una carpeta .git que es la que va a estar manejando todos los cambios que se hagan si? ahora bien, cuando abro esa carpeta con VS code no me muestra la carpeta .git para poder trabajar dentro 🙁 espero puedan ayudarme con esto.

visual estudio vs code no muestra carpeta .git en el proyecto

introducir la descripción de la imagen aquí

Me he bajado un proyecto de angular de un repositorio¿Como se instalan las dependencias para empezar a trabajar?

Se que en el package.json esta indicado todo lo que hay que instalar. También se que hay un comando en npm que hay que ejecutar cuando acabas de bajarte un proyecto de git, ya que las librerías no se guardan en git, solo las referencias en el package.json. La cosa es que no encuentro cual era ese comando….

Espero encontrar la respuesta pronto y tal vez contestarme a mi mismo, pero veo útil que esta pregunta exita aqui.

Error al añadir frontend-maven-plugin con el objetivo de usar React en un proyecto Spring

Estoy siguiendo un tutorial para implementar estas dos tecnologías, y una vez que añado webpack.config.js al proyecto:

var path = require('path');  module.exports = {     entry: './src/main/js/app.js',     devtool: 'sourcemaps',     cache: true,     mode: 'development',     output: {         path: __dirname,         filename: './src/main/resources/static/built/bundle.js'     },     module: {         rules: [             {                 test: path.join(__dirname, '.'),                 exclude: /(node_modules)/,                 use: [{                     loader: 'babel-loader',                     options: {                         presets: ["@babel/preset-env", "@babel/preset-react"]                     }                 }]             }         ]     } };

Me salta un error en el pom.xml que acabo de rellenar anteriormente con el plugin frontend-maven:

Failed to run task at com.github.eirslett.maven.plugins.frontend.mojo

<!-- tag::frontend-maven-plugin[] --> 			<plugin> 				<groupId>com.github.eirslett</groupId> 				<artifactId>frontend-maven-plugin</artifactId> 				<version>1.6</version> 				<configuration> 					<installDirectory>target</installDirectory> 				</configuration> 				<executions> 					<execution> 						<id>install node and npm</id> 						<goals> 							<goal>install-node-and-npm</goal> 						</goals> 						<configuration> 							<nodeVersion>v10.11.0</nodeVersion> 							<npmVersion>6.4.1</npmVersion> 						</configuration> 					</execution> 					<execution> 						<id>npm install</id> 						<goals> 							<goal>npm</goal> 						</goals> 						<configuration> 							<arguments>install</arguments> 						</configuration> 					</execution>           // error aparece en la etiqueta <execution> de abajo: 					<execution> 						<id>webpack build</id> 						<goals> 							<goal>webpack</goal> 						</goals> 					</execution> 				</executions> 			</plugin> 			<!-- end::frontend-maven-plugin[] -->

He pensado en probar a poner alguna otra modificacion de este plugin pero no se cual coger (al parecer la diferencia es que en las otras la version de npm cambia)