除非他们是用户,否则如何创建其他用户无法编辑的用户个人资料页面?
我尝试解决的问题是网址路由是如何工作的,最佳做法是在profile/<username> or <user_id>
页面上存储用户的个人资料然后加载到个人用户中#39; s数据,如使用通过网址传递的用户名或ID的最近帖子?
这也会由一个视图和模板处理,只需使用{% if request.user == profile.user %}
来显示编辑个人资料等内容吗?
答案 0 :(得分:1)
您提出的解决方案是最简单的解决方法。它将满足您的所有要求,唯一的缺点是需要在一个模板中混合只读和编辑代码。
其他选项是让profile/<username>/edit
成为只读视图,并CREATE TYPE CarType AS OBJECT(
price_id NUMBER,
quantity NUMBER
);
create table Prices
( cType CarType,
constraint pk_prices primary key (ctype.price_id) );
CREATE TABLE Cars(
carid NUMBER PRIMARY KEY,
carinfo cartype,
CONSTRAINT car_fk FOREIGN KEY(carinfo.price_id) REFERENCES prices(cType.price_id)
);
进行编辑(显然只限于所有者)。