Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

307
Views
(expresar, reaccionar) ¿Cómo obtener datos de una clave externa a través de mySQL?

Por contexto:

  • Tengo que hacer un sistema de solicitud de amistad. Tengo usuarios registrados y una página que muestra a todos los usuarios dentro de una lista, cada uno en un bloque con sus nombres y un botón "agregar". Una vez que se hace clic en el botón, envía mi base de datos a una tabla [request], la identificación de usuario del remitente y la identificación del receptor, cada uno respectivamente en una tabla con "sender_ID (bigInt), receiver_ID (bigInt) y comfirmed (bool) como la estructura.

  • Quiero, en una página de lista de amigos, mostrar a todos los usuarios que son mis amigos, y mostrar también los que tienen una solicitud pendiente, ya sea mía o de ellos.

  • En esta lista de amigos, quiero mostrar a esos usuarios lo mismo que antes, en un pequeño bloque con su nombre completo y nombre de usuario. Aunque eso requiere que acceda a su información a través de su ID (clave principal, estar en la tabla de usuarios. Ya sea un receptor o un remitente de una solicitud de amistad).

Problema: no tengo idea de qué código debo escribir para acceder a la información de un usuario a través de una clave externa. Actualmente usa express y React juntos, y el paquete mySQL para el manejo de bases de datos.

Obtener las solicitudes de la tabla (solicitud)

 app.get("/api/friends", (req, res) => { const sqlSelect = "SELECT * FROM request" db.query(sqlSelect, (err, result) => { res.send(result) }) })

Reaccionar página de lista de amigos

[...]

 const [friends, setFriends] = useState([]) const getFriends = () => { Axios.get("http://localhost:3001/api/friends") .then((res)=> { setFriends(res.data) console.log(res.data) }) } useEffect(() => { getFriends(); }, []); return ( <LoginContext.Provider value={{ loggedIn, setLoggedIn }}> <div> {friends.map((friend, key) => ( <> <a key={friend.sender_id}> <p>{friend.sender_id}</p> <p>{friend.receiver_id}</p> </a> </> ))} </div> </LoginContext.Provider> ); } export default Friendlist;

Como puede ver en el código de reacción, en la parte de representación, no tengo problemas para mapear lo que viene de mi tabla [request], pero eso no es lo que quiero. También quiero poder obtener la información de un usuario y mostrarla, usando solo SU identificación, para no terminar mostrando a todos los usuarios que están registrados en el sistema. No sé si ustedes entienden lo que estoy tratando de hacer...?

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!