Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在web2py中按日期生成特定数据_Python_Date_Web2py - Fatal编程技术网

Python 在web2py中按日期生成特定数据

Python 在web2py中按日期生成特定数据,python,date,web2py,Python,Date,Web2py,我被我的申请卡住了。 我想根据我想选择的日期从数据库中生成特殊数据 以下是我的模型: # -*- coding: utf-8 -*- # on_define_lion def on_define_lion(table): # represent table.time_taken.represent = ads_field_constructor.represent_integer table.ukuran_lebar_toko.represent = ads_field

我被我的申请卡住了。 我想根据我想选择的日期从数据库中生成特殊数据

以下是我的模型:

# -*- coding: utf-8 -*-

# on_define_lion
def on_define_lion(table):
    # represent
    table.time_taken.represent = ads_field_constructor.represent_integer
    table.ukuran_lebar_toko.represent = ads_field_constructor.represent_integer
    table.weeks.represent = ads_field_constructor.represent_integer
    table.mama_lemon_penjualan.represent = ads_field_constructor.represent_integer
    table.zinc_refreashing_cool_penjualan.represent = ads_field_constructor.represent_integer
    table.zinc_black_shine_penjualan.represent = ads_field_constructor.represent_integer
    table.systema_spring_fresh_penjualan.represent = ads_field_constructor.represent_integer
    table.systema_mentol_breeze_penjualan.represent = ads_field_constructor.represent_integer
    table.emeron_anti_dandruff_penjualan.represent = ads_field_constructor.represent_integer
    table.emeron_black_shine_penjualan.represent = ads_field_constructor.represent_integer
    table.ciptadent_maxi_12_penjualan.represent = ads_field_constructor.represent_integer
    table.mama_lemon_stock.represent = ads_field_constructor.represent_integer
    table.zinc_refreashing_cool_stock.represent = ads_field_constructor.represent_integer
    table.zinc_black_shine_stock.represent = ads_field_constructor.represent_integer
    table.systema_spring_fresh_stock.represent = ads_field_constructor.represent_integer
    table.systema_mentol_breeze_stock.represent = ads_field_constructor.represent_integer
    table.emeron_anti_dandruff_stock.represent = ads_field_constructor.represent_integer
    table.emeron_black_shine_stock.represent = ads_field_constructor.represent_integer
    table.ciptadent_maxi_12_stock.represent = ads_field_constructor.represent_integer
    table.total_transaksi_dalam_satuan_rupiah.represent = ads_field_constructor.represent_integer
    table.foto_outlet.represent = ads_field_constructor.represent_url
    table.foto_bukti_trasnsaksi.represent = ads_field_constructor.represent_url
    table.foto_display_produk_1.represent = ads_field_constructor.represent_url
    table.foto_produk_dislay_2.represent = ads_field_constructor.represent_url
    table.foto_posm_1.represent = ads_field_constructor.represent_url
    table.foto_posm_2.represent = ads_field_constructor.represent_url
    # requires
    table.auditor.requires = IS_NOT_EMPTY()
    table.date_of_response.requires = ads_field_constructor.requires_date()
    table.sync_date.requires = ads_field_constructor.requires_date()
    table.time_of_response.requires = IS_TIME()
    table.sync_time.requires = IS_TIME()
    table.jenis_kunjungan.requires = ads_field_constructor.requires_set_not_empty(list_register_outlet)
    table.berada_di_dalam_pasar_atau_tidak.requires = ads_field_constructor.requires_set_not_empty(list_pasar)
    table.type_outlet.requires = ads_field_constructor.requires_set_not_empty(list_type_outlet)
    table.katagori_produk_yang_di_jual_sembako.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.katagori_produk_yang_di_jual_food.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.katagori_produk_yang_di_jual_beverage.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.katagori_produk_yang_di_jual_ice_cream.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.katagori_produk_yang_di_jual_personal_care.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.katagori_produk_yang_di_jual_household.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.katagori_produk_yang_di_jual_cigarette.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.katagori_produk_yang_di_jual_medicine.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.katagori_produk_yang_di_jual_vitamin.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.katagori_produk_yang_di_jual_baby_care.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.kondisi_yang_ada_di_toko_chiller.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.kondisi_yang_ada_di_toko_coolbox.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.kondisi_yang_ada_di_toko_freezer_ice_cream.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.kondisi_yang_ada_di_toko_rak_rokok_special.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.kondisi_yang_ada_di_toko_special_branding.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.kondisi_yang_ada_di_toko_program_display.requires = ads_field_constructor.requires_set_not_empty(list_yes)
    table.di_kunjungi_salesman_principle_terkait_program_ads.requires = ads_field_constructor.requires_set_not_empty(list_ya)
    table.apakah_outlet_melakukan_transaksi.requires = ads_field_constructor.requires_set_not_empty(list_beli)
    table.alasan_tidak_mau_beli.requires = ads_field_constructor.requires_set_not_empty(list_alasan_tidak_beli)

# create table : lion
db.define_table('lion', 
    Field('uuid'), 
    Field('auditor'), 
    Field('date_of_response', 'date'), 
    Field('time_of_response', 'time'), 
    Field('sync_date', 'date'), 
    Field('sync_time', 'time'), 
    Field('geo_location'), 
    Field('time_taken', 'integer'), 
    Field('jenis_kunjungan'), 
    Field('data_toko'), 
    Field('id_outlet'), 
    Field('nama_outlet'), 
    Field('area'), 
    Field('tag_location'), 
    Field('alamat'), 
    Field('kecamatan'), 
    Field('patokan'), 
    Field('berada_di_dalam_pasar_atau_tidak'), 
    Field('type_outlet'), 
    Field('katagori_produk_yang_di_jual_sembako'), 
    Field('katagori_produk_yang_di_jual_food'), 
    Field('katagori_produk_yang_di_jual_beverage'), 
    Field('katagori_produk_yang_di_jual_ice_cream'), 
    Field('katagori_produk_yang_di_jual_personal_care'), 
    Field('katagori_produk_yang_di_jual_household'), 
    Field('katagori_produk_yang_di_jual_cigarette'), 
    Field('katagori_produk_yang_di_jual_medicine'), 
    Field('katagori_produk_yang_di_jual_vitamin'), 
    Field('katagori_produk_yang_di_jual_baby_care'), 
    Field('kondisi_yang_ada_di_toko_chiller'), 
    Field('kondisi_yang_ada_di_toko_coolbox'), 
    Field('kondisi_yang_ada_di_toko_freezer_ice_cream'), 
    Field('kondisi_yang_ada_di_toko_rak_rokok_special'), 
    Field('kondisi_yang_ada_di_toko_special_branding'), 
    Field('kondisi_yang_ada_di_toko_program_display'), 
    Field('ukuran_lebar_toko', 'integer'), 
    Field('di_kunjungi_salesman_principle_terkait_program_ads'), 
    Field('nama_perusahaan_salesman_tersebut'), 
    Field('alasan_besedia_beli_di_motoris_adshouse'), 
    Field('foto_outlet'), 
    Field('data_transaksi'), 
    Field('weeks', 'integer'), 
    Field('apakah_outlet_melakukan_transaksi'), 
    Field('alasan_tidak_mau_beli'), 
    Field('mama_lemon_penjualan', 'integer'), 
    Field('zinc_refreashing_cool_penjualan', 'integer'), 
    Field('zinc_black_shine_penjualan', 'integer'), 
    Field('systema_spring_fresh_penjualan', 'integer'), 
    Field('systema_mentol_breeze_penjualan', 'integer'), 
    Field('emeron_anti_dandruff_penjualan', 'integer'), 
    Field('emeron_black_shine_penjualan', 'integer'), 
    Field('ciptadent_maxi_12_penjualan', 'integer'), 
    Field('mama_lemon_stock', 'integer'), 
    Field('zinc_refreashing_cool_stock', 'integer'), 
    Field('zinc_black_shine_stock', 'integer'), 
    Field('systema_spring_fresh_stock', 'integer'), 
    Field('systema_mentol_breeze_stock', 'integer'), 
    Field('emeron_anti_dandruff_stock', 'integer'), 
    Field('emeron_black_shine_stock', 'integer'), 
    Field('ciptadent_maxi_12_stock', 'integer'), 
    Field('total_transaksi_dalam_satuan_rupiah', 'integer'), 
    Field('foto_bukti_trasnsaksi'), 
    Field('foto_display_produk_1'), 
    Field('foto_produk_dislay_2'), 
    Field('foto_posm_1'), 
    Field('foto_posm_2'), 
    #auth.signature,
    on_define = on_define_lion, 
    format = '%(uuid)s')
以下是我的模块:

#!/usr/bin/env python
# coding: utf8
from gluon import *

# represent
represent_integer = lambda value, field: \
    SPAN('%s' % (format(value, ",d").replace(",", ".") ), 
         _class = 'text-success') if value > 0 else SPAN(0, _class = 'text-danger')
represent_url = lambda value, field: A('View', _target="_blank", _href="%s" % value) if value else ''

# requires
requires_date = lambda: \
    IS_DATE(format = current.T('%Y-%m-%d'), error_message = current.T('Enter date as yyyy-mm-dd') )

requires_set_not_empty = lambda list_value: IS_IN_SET(list_value, zero = current.T('Choose One') )

# widget
widget_string = lambda field, value: \
    SQLFORM.widgets.string.widget(field, value, 
                                  _class = "form-control string", 
                                  _placeholder = current.T('Should be filled') )
我想创建一个如下所示的控制器:

选择日期

开始日期:_________

结束日期:__________

提交(按钮)

所以在我按下提交按钮之后,我想要一个表来查看日期开始和日期结束之间的数据库。帮我一把,谢谢

------U p D A T D------

我在控制器中使用此代码

 def non_register(): 
    form = SQLFORM.factory(
    Field("start_date", type="date"),
    Field("end_date", type="date"))
    if form.process().accepted:
        q = ((db.lion.date_of_response >= form.vars.start_date) &
             (db.lion.date_of_response <= form.vars.end_date))
    rows = db(q).select()
    return dict(form=form,rows=rows)
def non_寄存器():
form=SQLFORM.factory(
字段(“开始日期”,type=“日期”),
字段(“结束日期”,type=“日期”))
如果接受form.process():
q=((db.lion.date\u of\u response>=form.vars.start\u date)&
(db.lion.date_of_response可以用来创建所需的表单

form = SQLFORM.factory(
    Field("start_date", type="date"),
    Field("end_date", type="date"))
这将生成很好的日期选择器,
form.vars.start\u date
form.vars.end\u date
将是可以直接包含在DAL查询中的
datetime.date
实例

q = ((db.yourtable.date >= form.vars.start_date) &
     (db.yourtable.date <= form.vars.end_date))
rows = db(q).select()
q=((db.yourtable.date>=form.vars.start\u date)&

(db.yourtable.date您的模型看起来像一个或另一个字段,而应该是一个引用。因此,我必须定义另一个表以在我的表单中模拟结果?@Alexaxel您将查询放在错误的位置。它应该像
db(查询)。选择(…)
,如我的示例所示。它显示了另一个错误,你能检查我更新的问题吗?我写错了吗?@Alexaxel请按照我的示例。你正在调用
db()
,没有查询,它应该是
db(q)。选择()
其中
q
正是我在示例中所说的。已经完成了您的代码,先生,谢谢您。但是如果我实现了您的代码,我会遇到这样的错误:“Field”对象没有属性“date”,我会写这个(db.lion.date\u of_response.date>=form.vars.start\u date)响应字段的.db.lion.date\u包含类似于2017-02-28的数据,因此错误来自何处?感谢您跟踪“.date”是错误的,它应该是:
db.lion.date\u\u响应>=form.vars.start\u date
q = ((db.yourtable.date >= form.vars.start_date) &
     (db.yourtable.date <= form.vars.end_date))
rows = db(q).select()