2011-01-04 5 views
5

Creé una aplicación que permite a los usuarios ingresar productos y compararlos. Estoy en el punto en el que debo considerar el escalado y varios usuarios, y solo quiero mostrarles a los usuarios los elementos que han creado (en lugar de todo el archivo db, que puede ser una opción en algún momento, pero por ahora cada usuario tiene que crear sus propias listas).¿Hay alguna manera de configurar todas las consultas de DB para que solo recuperen las entradas de un usuario determinado, o cada consulta en la aplicación debe incluir "Y usuario ..."?

¿Existe alguna manera enlatada/preferida de hacer que todas las consultas en una aplicación solo devuelvan entradas con el campo "autor" establecido para un determinado usuario, el usuario que inició sesión? ¿O todas las consultas deben actualizarse con el filtro de tipo "Y autor ..."? ¿Es esto para lo que son los espacios de nombres?

Estoy usando Python en Google App Engine.

+0

Puede crear una tabla diferente para cada usuario – Falmarri

+1

El almacén de datos de App Engine no tiene tablas, en su lugar, el término 'tipo' se utiliza para referirse a colecciones de objetos con los mismos atributos (o similares). Agregar un tipo para cada usuario es * probablemente * una mala idea. Sería mejor que utilizaras namesapces. –

Respuesta

4

Sugeriría buscar en namespaces, es exactamente el tipo de caso de uso para el que son adecuados.

Una nota, si desea poder consultar a los usuarios todos los productos de los usuarios, es mejor que agregue una propiedad de propietario y utilice filtros de consulta. Actualmente no puede realizar consultas en espacios de nombres, solo dentro de un solo espacio de nombres a la vez.

Cuestiones relacionadas