doc database

This commit is contained in:
2026-05-14 09:19:03 +02:00
parent e1e1174db7
commit ed67438739
6 changed files with 1051 additions and 10 deletions
+1 -1
View File
@@ -121,7 +121,7 @@ class MultiWell(models.Model):
row_order = models.CharField(_("Ordre ligne"), help_text=_('Ordre ligne de puit. Lecture en serpentin dans le sens des +- X'), max_length=16, null=True, blank=False, default="D,C,B,A")
# Balayage
order = models.PositiveSmallIntegerField(_("Ordre"), help_text=_('Ordre de lecture du multi-puit'), blank=False, default=0)
duration = models.PositiveIntegerField(_("Durée"), help_text=_('Durée du film en secondes por la calibration'), blank=False, default=10)
duration = models.PositiveIntegerField(_("Durée"), help_text=_('Durée de capture en secondes pour la calibration'), blank=False, default=10)
xbase = models.FloatField(_("Origine X"), help_text=_('Base origine X en mm'), blank=False, default=50.0)
ybase = models.FloatField(_("Origine Y"), help_text=_('Base origine Y en mm'), blank=False, default=50.0)
@@ -38,6 +38,10 @@
</a>
{% endif %}
<hr class="w3-bar-item divider w3-grey">
<a href="{% url 'scanner:documentation' 'doc_database' %}" class="w3-bar-item w3-btn w3-hover-opacity">
<i class="fa-solid fa-book w3-text-green"></i> {% trans "Descriptif des données" %}
</a>
<form method="post" action="{% url 'logout' %}">
{% csrf_token %}
<button class="w3-bar-item w3-btn w3-hover-opacity" type="submit">
@@ -98,18 +102,18 @@
<a href="{% url 'scanner:session_view' %}" class="w3-bar-item w3-btn w3-hover-opacity">
<i class="fa-solid fa-gear w3-text-purple w3-xlarge"></i> {% trans "Création de sessions d'expériences" %}
</a>
<hr class="w3-bar-item divider w3-grey">
{% if conf.tracking %}
<a href="{% url 'planarian:import-params' %}" class="w3-bar-item w3-btn w3-hover-opacity">
<i class="fa-solid fa-file-import w3-text-lime w3-xlarge"></i> {% trans "Importer des configurations depuis CSV" %}
</a>
{% endif %}
<hr class="w3-bar-item divider w3-grey">
<a href="{% url 'scanner:experiment_view' %}" class="w3-bar-item w3-btn w3-hover-opacity">
<i class="fa-solid fa-gear w3-text-pink w3-xlarge"></i> {% trans "Gestions des expériences" %}
</a>
<a href="{% url 'scanner:experimentconfig_view' %}" class="w3-bar-item w3-btn w3-hover-opacity">
<i class="fa-solid fa-gears w3-text-pink w3-xlarge"></i> {% trans "Configuration des expériences" %}
</a>
</a>
{% if conf.tracking %}
<a href="{% url 'planarian:import-params' %}" class="w3-bar-item w3-btn w3-hover-opacity">
<i class="fa-solid fa-file-import w3-text-lime w3-xlarge"></i> {% trans "Importer des configurations depuis CSV" %}
</a>
{% endif %}
<a href="{% url 'scanner:calibration' %}" class="w3-bar-item w3-btn w3-hover-opacity">
<i class="fa-solid fa-wrench w3-text-orange w3-xlarge"></i> {% trans "Calibration" %}
</a>
@@ -118,7 +122,7 @@
<a href="{% url 'scanner:scanning' %}" class="w3-bar-item w3-btn w3-hover-opacity">
<i class="fa-solid fa-film w3-text-green w3-xlarge""></i> {% trans "Balayage multi-puits" %}
</a>
<div class="w3-bar-item w3-dark-xxlight">{% trans "Résultats " %}</div>
<div class="w3-bar-item w3-light-blue">{% trans "Résultats " %}</div>
{% if conf.tracking %}
<a href="{% url 'planarian:export-csv' %}" class="w3-bar-item w3-btn w3-hover-opacity">
<i class="fa-solid fa-file-export w3-text-lime w3-xlarge"></i> {% trans "Export CSV des expériences" %}
+1
View File
@@ -13,6 +13,7 @@ urlpatterns = [
path('supervisor/', views.supervisor_view, name='supervisor'),
path('logs/worker', views.supervisor_worker, name='logs_worker'),
path('logs/scheduler', views.supervisor_scheduler, name='logs_scheduler'),
path("doc/<slug:template>/", views.documentation, name="documentation"),
path('session/view', views.admin_session_view, name='session_view'),
path('experiment/view', views.admin_experiment_view, name='experiment_view'),
+8 -1
View File
@@ -51,6 +51,7 @@ def global_context(request, **ctx):
**ctx
)
@login_required
@user_passes_test(is_staff_or_admin)
def admin_view(request):
@@ -76,7 +77,6 @@ def admin_periodictask_view(request):
@login_required
@user_passes_test(is_staff_or_admin)
def reductstore_view(request):
return render(request, "scanner/redirection.html", context=global_context(request, link=f'http://{settings.LOCAL_IP_SERVER}:8383/'))
@login_required
@@ -104,6 +104,13 @@ def supervisor_worker(request):
def supervisor_scheduler(request):
return render(request, "scanner/redirection.html", context=global_context(request, link=f'http://{settings.LOCAL_IP_SERVER}:9001/logtail/test_tube:planification'))
def documentation(request, template=None):
ctx = dict(
choice_title=_("Documentation")
)
return render(request, f"docs/{template}.html", context=global_context(request, **ctx))
## Mainboard
@login_required
def scanning_view(request):