UserN
Μία συμβουλή από μένα
Όταν χρησιμοποιείς κάποια εργαλεία για να κάνεις κάτι πρέπει να μπορείς να καταλάβεις πως δουλεύουν και πάντα να κοιτάς το documentation τους.
Μην χτίζεις κάτι μεγάλο και μετά ψάχνεις να βρεις που είναι το λάθος και ίσως είναι στα θεμέλια. Σε κάθε βήμα που κάνεις κάνε τεστ έτσι θα μπορείς να βρεις εύκολα που γίνεται το λάθος.
Στη συγκεκριμένη περίπτωση τώρα λές ότι στο δεύτερο μενού σου εμφανίζονται τα στοιχεία με κόμμα και όχι το καθένα ξεχωριστά.
Θα φανταστώ ότι πρόκειται για μενού html ol ή ul ordered ή unordered
Ο κώδικας σου που στέλνει τα στοιχεία σε αυτό το μενού δημιουργεί τόσα list items όσα είναι τα στοιχεία που θέλεις να στείλεις; Στέλνει σε κάθε li ένα στοιχείο;
Εάν υποτίθεται ότι αυτό γίνεται αυτόματα με κάποια συνάρτηση της web2py (δεν ξέρω την βιβλιοθήκη) έχεις ελέγξει ότι χρησιμοποιείς σωστά αυτή τη συνάρτηση μέθοδο ή ότι άλλο είναι;
Ο παρακάτω κώδικας σε js κάνει τα item ενός array στοιχεία λίστας και τα βάζει στο html
είναι από το w3schools
var fruits, text, fLen, i;
fruits = ['μήλο','καρπούζι','ροδάκινο'];
fLen = fruits.length;
text = "<ul>";
for (i = 0; i < fLen; i++) {
text += "<li>" + fruits[i] + "</li>";
}
text += "</ul>";
document.getElementById("fruits").innerHTML = text;
O ίδιος κώδικας σε python εκτός την τελευταία γραμμή
fruits = ['μήλο','καρπούζι','ροδάκινο']
text = "<ul>"
for fruit in fruits>
text += "<li>" + fruit + "</li>"
text += "</ul>"
και είναι έτοιμη η λίστα σου
όσο πιο abstract τόσο καλύτερα
>>> def lista_se_html_ul(lista):
text="<ul>\n"
for item in lista:
text+="<li>"+item+"</li>\n"
text+="</ul>\n"
return text
>>> print(lista_se_html_ul(fruits))
<ul>
<li>μήλο</li>
<li>καρπούζι</li>
<li>ροδάκινο</li>
</ul>