将窗体更改为搜索框

2024-06-01 01:35:43 发布

您现在位置:Python中文网/ 问答频道 /正文

下面是我的表单代码,其中用户插入股票符号,输入的结果显示在新页面中。 到目前为止我所做的:

型号.py

from django.db import models
from django.contrib import auth


class Child(models.Model):
    name = models.CharField(max_length=150, blank=True)

英寸表单.py

from django import forms
from .models import Child

class ChildlForm(forms.ModelForm):
    class Meta:
        model = Child
        fields = ('name',)

英寸视图.py

from django.shortcuts import render
from .forms import ChildForm
from pandas_datareader import data as wb
from yahoofinancials import YahooFinancials

# Create your views here.


def home(request):
    form = ChildForm()
    if request.method == "POST":
        form = ChildForm(request.POST)
        if form.is_valid():
            data = form.save(commit=True)
            name = data.name

            symbols = [name]
            yahoo_financials = YahooFinancials(symbols)
            new_data = pd.DataFrame()
            for s in symbols :
                new_data[s] = wb.DataReader(s, data_source ='yahoo', start = '2014-1-1')['Adj Close']

            a = new_data[s]
            b = a[-1]


            context={
            'name':name,
            'b':b,}

        else:
            form = ChildForm()
            return render(request,'main/index.html',{'form':form})
        return render(request,'main/index2.html',context)


    return render(request,'main/index.html',{'form':form})

索引.html文件

<form method="POST">
    {{ form }}
    {% csrf_token %}
    <input class="form-control mr-sm-2" type="text">
    <button type="submit">OK</button>
  </form>

我意识到form方法有局限性,把name放在输入框前面,看起来很难看。你知道吗

我试图用search box在index2.html文件中构建serach box,但不起作用:

<nav class="navbar navbar-default">
        <div class="container-fluid">
            <form id="searchbox" method="get" autocomplete="off" class="navbar-form navbar-left" role="search">
                <input name='q' type="text" type="text" class="form-control" placeholder="Search" />
                <button id="button-submit" type="submit" value=" " class="btn btn-default" />
            </form>
            </div>
    </nav>

我不知道我应该如何连接表单和搜索框,甚至我应该连接。在这种情况下,我应该怎么做才能将搜索框中的数据转换为索引并在下一页中使用。我还想在下一页保持搜索框,这样用户就不必返回到上一页寻找新的符号。你知道吗

如有任何帮助和建议,我将不胜感激。你知道吗


Tags: djangonamefromimportformdatamodelsrequest