1
0
mirror of https://git.yoctoproject.org/poky synced 2026-07-17 04:07:06 +00:00

bitbake: toaster: do not save objects in session

In order to avoid problems when using JSON serializer for
saving sessions, we move from storing the objects themselves
in the session to storing the object id and reloading the
object when retrieved.

This allows, for example, to use cookie-storage sessions if the
infrastructure owner so desires.

(Bitbake rev: 39d0f0c2e87d4b161f1eeaa2657e61b5a6bc9ee2)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Alexandru DAMIAN
2014-09-04 17:00:11 +01:00
committed by Richard Purdie
parent 32a27931db
commit a6f1e31721
+9 -9
View File
@@ -1774,8 +1774,8 @@ if toastermain.settings.MANAGED:
"projects": Project.objects.all(),
"MANAGED" : toastermain.settings.MANAGED
}
if 'project' in request.session:
ret['project'] = request.session['project']
if 'project_id' in request.session:
ret['project'] = Project.objects.get(pk = request.session['project_id'])
return ret
# new project
@@ -1841,7 +1841,7 @@ if toastermain.settings.MANAGED:
puser = None
# we use implicit knowledge of the current user's project to filter layer information, e.g.
request.session['project'] = prj
request.session['project_id'] = prj.id
context = {
"project" : prj,
@@ -1937,8 +1937,8 @@ if toastermain.settings.MANAGED:
(filter_string, search_term, ordering_string) = _search_tuple(request, Layer_Version)
queryset_all = Layer_Version.objects.all()
if 'project' in request.session:
queryset_all = queryset_all.filter(up_branch__in = Branch.objects.filter(name = request.session['project'].release.name))
if 'project_id' in request.session:
queryset_all = queryset_all.filter(up_branch__in = Branch.objects.filter(name = Project.objects.get(pk = request.session['project_id']).release.name))
queryset_with_search = _get_queryset(Layer_Version, queryset_all, None, search_term, ordering_string, '-layer__name')
queryset = _get_queryset(Layer_Version, queryset_all, filter_string, search_term, ordering_string, '-layer__name')
@@ -2023,8 +2023,8 @@ if toastermain.settings.MANAGED:
(filter_string, search_term, ordering_string) = _search_tuple(request, Recipe)
queryset_all = Recipe.objects.all()
if 'project' in request.session:
queryset_all = queryset_all.filter(Q(layer_version__up_branch__in = Branch.objects.filter(name = request.session['project'].release.name)) | Q(layer_version__build__in = request.session['project'].build_set.all()))
if 'project_id' in request.session:
queryset_all = queryset_all.filter(Q(layer_version__up_branch__in = Branch.objects.filter(name = Project.objects.get(pk=request.session['project_id']).release.name)) | Q(layer_version__build__in = Project.objects.get(pk = request.session['project_id']).build_set.all()))
queryset_with_search = _get_queryset(Recipe, queryset_all, None, search_term, ordering_string, '-name')
queryset = _get_queryset(Recipe, queryset_all, filter_string, search_term, ordering_string, '-name')
@@ -2107,8 +2107,8 @@ if toastermain.settings.MANAGED:
(filter_string, search_term, ordering_string) = _search_tuple(request, Machine)
queryset_all = Machine.objects.all()
# if 'project' in request.session:
# queryset_all = queryset_all.filter(Q(layer_version__up_branch__in = Branch.objects.filter(name = request.session['project'].release.name)) | Q(layer_version__build__in = request.session['project'].build_set.all()))
# if 'project_id' in request.session:
# queryset_all = queryset_all.filter(Q(layer_version__up_branch__in = Branch.objects.filter(name = Project.objects.get(request.session['project_id']).release.name)) | Q(layer_version__build__in = Project.objects.get(request.session['project_id']).build_set.all()))
queryset_with_search = _get_queryset(Machine, queryset_all, None, search_term, ordering_string, '-name')
queryset = _get_queryset(Machine, queryset_all, filter_string, search_term, ordering_string, '-name')