Flask werkzeug.routing.BuildError

2024/10/14 2:22:30

I doing a flask app and when i try to put a link to redirect a user to his profile page by calling

BuildError: Could not build url for endpoint 'profile'. Did you forgetto specify values ['business_name']?

when i try to login a user.My app works fine the previous days with this same code i do not what has happen and i have tried all possible means to get this right but no way

@app.route('/profile/<business_name>')
@login_required
def profile(business_name):user = User.query.filter_by(business_name=business_name).first()if user == None:flash('This Profile does not exist {}'.format(business_name))return redirect(url_for('login'))return render_template('profile.html',user=user)

(main.html)

<ul class="nav navbar-nav"><li><a href="{{ url_for('home_page') }}" class="active">Home</a></li>{% if g.user.is_authenticated %}<li><a href="{{ url_for('profile', business_name=g.user.business_name) }}">Your Profile</a></li><li><a href="{{url_for('logout')}}">Logout</a></li>
Answer

Problem is you are not defining the route view function to take in the following form:

/profile/business_name

Hence you should send business_name in URL but you are sending arguments to the function. You should do the following:

<a href="/profile/{{business_name=g.user.business_name }}">
https://en.xdnf.cn/q/118008.html

Related Q&A

getting attribute of an element with its corresponding Id

suppose that i have this xml file :<article-set xmlns:ns0="http://casfwcewf.xsd" format-version="5"> <article><article id="11234"><source><hostn…

How to install selenium python on Mac

Ive downloaded the Selenium zip file for python and it contains the folder with the setup.py. It says on python.org that I have to type in terminal python setup.py install but it gives me this error th…

aws s3 - object has no attribute server_side_encryption

Can someone please explain the differences in these two calls. The first one gives the correct server_side_encryption and the second one gives an error. The other attributes give the same value-#!/usr/…

Removing nested for loop to find coincidence values

I am currently using a nested for loop to iterate through to arrays to find values that match a certain criterion. The problem is that this method is incredibly inefficient and time consuming. I was to…

Combine two pandas DataFrame into one new

I have two Pandas DataFrames whose data from different sources, but both DataFrames have the same column names. When combined only one column will keep the name.Like this:speed_df = pd.DataFrame.from_d…

Reasons of slowness in numpy.dot() function and how to mitigate them if custom classes are used?

I am profiling a numpy dot product call. numpy.dot(pseudo,pseudo)pseudo is a numpy array of custom objects. Defined as:pseudo = numpy.array([[PseudoBinary(1), PseudoBinary(0), PseudoBinary(1)],[PseudoB…

How to open cmd and run ipconfig in python

I would like to write a script that do something like that: open the cmd and run the commend "ipconfig" and than copy my ip and paste it to a text file. I wrote the beginning of the script …

Using OAuth to authenticate Office 365/Graph users with Django

We are creating an application for use in our organization, but we only want people in our organization to be able to use the app. We had the idea of using Microsofts OAuth endpoint in order to authent…

Python flatten array inside numpy array

I have a pretty stupid question, but for some reason, I just cant figure out what to do. I have a multi-dimensional numpy array, that should have the following shape:(345138, 30, 300)However, it actual…

Peewee and Flask : Database object has no attribute commit_select

Im trying to use Peewee with Flask, but I dont understand why my database connection does not work.config.pyclass Configuration(object): DATABASE = {name: test,engine: peewee.MySQLDatabase,user: root,p…