модель:выводит имя файла, хранящегося в таблице в загруженной папке?
db.define_table('files',
Field('course_id', 'reference course'),
Field('documentx_filename',unique=True),
Field('documentx','upload'))
контроллер:
def show_doc():
rows = db((db.course.id == db.files.course_id) & (db.dept.id==db.course.dept_id)).select()
return dict(rows=rows)
def create_doc():
form = SQLFORM(db.files).process(next=URL('show_doc'))
if request.vars.documentx != None:
form.vars.documentx_filename = request.vars.documentx.filename
if form.process().accepted:
response.flash = 'form accepted'
elif form.errors:
response.flash = 'form has errors'
else :
response.flash = 'something still went wrong'
return dict(form = form)
вид файла для show_doc:
<div><a href={{=URL('default', 'download', args=row.files.documentx)}}> file = {{=row.files.documentx_filename}}</a></div>
<br />
{{pass}}
теперь, если я положил имя файла в поле "documentx_filename", то имя файла показано на рисунке.
Но если я не помещаю имя в поле «documentx_filename» и оставьте его пустым, но загрузите файл. Он должен скопировать имя файла, загруженного как в контроллер create_doc. Я ставлю оператор if, но он действительно делает это?
я редактировал вопрос и положить некоторую информацию. Теперь я могу показать имя файла, если мы заполним это поле, но он должен скопировать имя файла из файла, если поле осталось пустым, вы можете взглянуть. – shunya