الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

افتراضي استفسار في استدعاء قوالب css في bottle

مغلقمُجاب
بدأه MuStafa - HaSsan في 2 مارس 2013 · 40 رد · 1,746 مشاهدة · في لغة Python
مشاركة: واتساب X فيسبوك تيليجرام
لهذا السؤال إجابة معتمدة — اضغط للانتقال إليها
#1 صاحب الموضوع

السلام عليكم :

اعمل على سكربت صفحة تسجيل للمدونة

بعد ان طورت الكود واكملته بقيت فقط واجهة الصفحة

وجد صديقي واجهة ونزلناهة المهم

كود السكربت الخاص بصفحة التسجيل (بسيط فقط للتعلم )

هذا هو

 

# -*- coding: utf-8 -*-
import MySQLdb
from bottle import  route,run,request,response,debug,post,template,static_file,SimpleTemplate
import config
import sys
from cgi import escape as xss
from MySQLdb import escape_string as xsql


try:
    
    def mysql():
        db = MySQLdb.connect(config.host, config.user,config.passwd , config.db, charset = "utf8", use_unicode = True)
        db.autocommit(1)
        return db.cursor()
 
except Exception,R:
    print 'SOrrY~!',R
 
 
def insinfo(username,password,email):
    insert = mysql()
    insert.execute("INSERT INTO infosign(username,password,email) VALUES('%s','%s','%s')"%(username,password,email))
 
@route('/')
def login_form():
    return template('/home/coder/Desktop/login/signup.tpl')
    return '''
<html>
    <body>
    
        
        <table border="1" width="100%" height="190%" bordercolor="Blue">
        
        <td align = center>
        <img src="http://localhostr.com/file/930/L0E06jXAAeYD/hads.jpeg" alt="عذرا .. حدث خلل في الصورة">    
        <form action="login" method="POST">
        <p>اهﻻ بك في موقع هدية</p></br>
        <p><font color="Blue">اسم المستخدم*</font>: </p><input name="usernames" type="text" /></br>
        <p><font color="Blue">الرقم السري*</font>: </p><input name="passwords" type="password" /></br>
        <p><font color="Blue">البريد اﻻلكتروني*</font>:</p><input name="email" type="text" /></br>
        <input type="submit" value="Enter" />
        </from>
        </td>
        </table>
    </body>
</html>'''

    
 
@post('/login')
def login_submit():
    username= request.forms.get('usernames')
    password= request.forms.get('passwords')
    email = request.forms.get('email')
    insinfo(username,password,email)
    
debug(True)
run(host='localhost',port=8080)

لمهم جلبت ملف الواجهة هو style.css

المهم عملت قالب وجلبت في الوسوم من ملف style.css

وعندما استدي القالم ﻻ تضهر الواجهة والله سهرت وبحثت عن المشكلة لم اجد حلا لها

جميعها نفس الحل هو تصفح الملفات بواسطة static_file
ﻻكن انا اريد فقط الدخول على الرابط يخرج التصميم والحقول

وهذه طريقتي عندما استدعيت القالب

 

def login_form():
    return template('signup.tpl;')
    return '''
<html>
    <body>
    
</html>'''

عندما ادخل ﻻ اجد الواجهة حتى ان الفورم وخصوصياته مثل الحقول ﻻتضهر
ﻻاعرف كيف احلها للمشكلة او طريقة اﻻستدعاء الصحيحة



هذا هو كود القالب مع العلم رافق ملف css معه والسكربت ايضا في ملف واحد

 

<html><head>

<title>هدايا</title>
<link rel="stylesheet" href="style.css" type="text/css" />
</head>
    <body>
    
-->
            <div id="clouds">
                    <div class="cloud x1"></div>
                    <div class="cloud x2"></div>
                    <div class="cloud x3"></div>
                    <div class="cloud x4"></div>
                    <div class="cloud x5"></div>
            </div>
</body>
</html>

 

هل من حل لضهور التصميم في الصفحة

salah.jpg

#2

المشكلةو هي عدم ضهور التصميم الي كتبته في css

ممايؤدي الى اختفاء الحقول

salah.jpg

#3

أنظر كيف تخدم الملفات الستاتيكية

http://bottlepy.org/docs/dev/tutorial.html?highlight=static_file#tutorial-static-files

 

كيف تريد عمل return مرتين :)

 

def login_form(): return template('signup.tpl;') return ''' <html> <body> </html>'''

تم تعديل هذه المشاركة بواسطة ahmed_youssef في 2 مارس 2013 في 15:30

1
(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#4

حذفت التصميم وكتبت تصميم اخر ضهر مع وجود return مرتين

 

استاذ احمد , عادي وجود return مرتين ﻻكن السبب هو كود ال css اذا فتحت سورس الصفحة ودخلت الى الملف من خلال سورس الصفحة راح يخرج لك خطا

وللان لم اعرف الحل

 

جربت تصميم اخر خرج بشكل جيد

 

ﻻكن هذا لم يخرح

 

مالحل برايك

salah.jpg

#5

كود ال return سيتم تنفيذ الأول فقط ولن يتم تنفيذ الثاني طالما الإثنين متتاليين تستطيع التأكد :)

 

دخولك إلى مصدر الصفحة ووجود الخطأ لايعني إلا عدم تخديم ملف ال css تستطيع لحل سريع أن تدمج التصميم في الكود الذي تخرجه لتتأكد من أن هذه هي المشكلة وبعد ذلك تقوم بتخديم الملفات الستاتيكية بصورة صحيحة.

(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#6

يعني قصدك ادمج كود ال template /`  مع الفورم

 

هل برايك راح يعمل التصميم

 

راح احاول وان شاء الله يعمل

salah.jpg

#7

ﻻحض هنا

 

https://gist.github.com/Mustafa-Hassan/5071091

 

دمجت كود template مع الفورم الي بنفس السكربت

 

 

ولم يخرج التصميم ﻻكن خرجت الحقول فقط

 

مالحل برايك

جميعها تخربطت في بالي ساتاذ الحل اعطني خطوة خطوة

واشكرك على المعلومة القيمة بخصوص قاعدة return

تم تعديل هذه المشاركة بواسطة MuStafa - HaSsan في 2 مارس 2013 في 16:58

salah.jpg

#8

ياأخي استبدل هذا السطر 

<link rel="stylesheet" href="style.css" type="text/css" />

بمحتوى ملف ال css لاتقم بعمل إستدعاء خارجي

(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#9

الحمدلله اخي احمد بفضل الله انحل المشكلة اشكرك .

 

ﻻكن بقيت مشكلة وحدة هي

 

الكود صار ملخبط وكبير

اريد افصله

 

هل يجوز ان استدعيه خارجيا وكيف

1

salah.jpg

#10

استاذ احمد ؟؟؟؟ ؟

 

ماهو الحل لكي افصله  عن الكود الرئيسي برايك

salah.jpg

#11

معذرة ، مشغول جدا اليوم

 

ضع ملف ال css في مسار منفصل وقم بخدمته كملف ستاتيكي ... وهذا كافي 

(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#12

السلام عليكم :

 

ﻻتهتم استاذ خذ راحتك ,, ﻻكن المهم ردك

 

.......

ﻻكن استاذ عندما  اعمل ملف static_file

 

راح يكون اﻻ ادخل للرابط واختار الملف يللا يضهر التصميم

 

يعني هكذا

 

login/index.css

 

اﻻ ادخل للمق على الرابط يلا يعمل التصميم

 

وﻻ اعرف كيف اثبته هو هذا مشكلتي



السلام عليكم :

 

ﻻتهتم استاذ خذ راحتك ,, ﻻكن المهم ردك

 

.......

ﻻكن استاذ عندما  اعمل ملف static_file

 

راح يكون اﻻ ادخل للرابط واختار الملف يللا يضهر التصميم

 

يعني هكذا

 

login/index.css

 

اﻻ ادخل للمق على الرابط يلا يعمل التصميم

 

وﻻ اعرف كيف اثبته هو هذا مشكلتي

salah.jpg

#13

أخي إنشئ فولدر بإسم static وضع فيه ملف ال css 

 

 

@route('/static/:filename#.*#')
def static(filename):
    return bottle.static_file(filename, root=os.path.join(APP_ROOT, 'static'))
(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#14

اتعبتك معي سوف اعمله اﻻن ان شاء الله وارد لك الخبر

 

اعتذر عن اﻻزعاج

salah.jpg

#15

فعلتها كما قلت بالحرف الواحد

وعندما انفذه تخرج صفحة فيها اكواد ملف css

 

ولم يخرج التصميم

 

 

\ﻻكن عندما وضعت ملف ثاني بصيغة template

 

ووضعت فيه اﻻستدعاءات

 

<html><head>

<title>هدايا</title>
<link rel="stylesheet" href="style.css" type="text/css" />
</head>
	<body>
	
-->
			<div id="clouds">
					<div class="cloud x1"></div>
					<div class="cloud x2"></div>
					<div class="cloud x3"></div>
					<div class="cloud x4"></div>
					<div class="cloud x5"></div>
			</div>
</body>
</html>

 

الخاصة بملف css

واعملت بالدالة static file

 

خرج التصميم بنجاح

ولو اتعبتك اخي احمد ﻻكن شوي تحمل

 

سؤالي هو كيف اثبت التصميم

 

المشكلة بمجرد دخولي لرابط الفورم

والحقول يذهب التصميم

 

كيف اثبته هي هذه المشكلة

 

 

احترامي لك

تم تعديل هذه المشاركة بواسطة MuStafa - HaSsan في 3 مارس 2013 في 14:59

salah.jpg

#16

ربما الأفضل ان ترفق الكود لأطلع عليه،

 

إذا ال css تعمل في صفحة ولاتعمل في أخرى فهي لم يتم إستدعائها في الأخرى 

 

التصميم السليم تضع استدعاءات ملفات ال css وال js المستخدمة في ملف layout ويتم إشتقاقه في جميع الصفحات الأخرى

 

http://bottlepy.org/docs/dev/stpl.html

تم تعديل هذه المشاركة بواسطة ahmed_youssef في 3 مارس 2013 في 15:08

(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#17

تفضل هذا رابط الصورة عند تجربة ملف css دون ملف اﻻشتقاقات

 

http://localhostr.com/kjMRUCDSvs6Y

 

 

سوف ارفق وانت اعمله لكي تصدقني استاذ

 

كود السكربت الي يعمل كما علمتني اول طريقة

 

https://gist.github.com/Mustafa-Hassan/5075900

فيه كود السي اس اس واﻻشتقاقات كما قلتلي اول طريقة

 

 

--------------------------------

اﻻن اتركنا من اﻻول ناتي للطريق ةالثاني كما قلتلي في static file

 

اعطيك كود ملف css + اﻻشتقاقات في ملف template

 

 

كود  css

 

https://gist.github.com/Mustafa-Hassan/5075909

 

كود اﻻشتقاقات (اﻻصلية لم اعدل عليها)

 

https://gist.github.com/Mustafa-Hassan/5075914

 

استاذ انا نفذت والله كما قلت لي

 

وضعت ملف التصميم css

 

اخترت الملف من الرابط ضهر فقط  كود الملف في الصفحة

 

ثم وضعت معه كود اﻻشتقاقات من ملف css

 

عمل كود ملف اﻻشتقاقات

 

وعندما انفذ كود ملف css

يخرج فقط الكود

 

 

اتمنى مانزعجت استاذ

تم تعديل هذه المشاركة بواسطة MuStafa - HaSsan في 3 مارس 2013 في 15:37

salah.jpg

#18

الكود كله اضغطه في ملف وارفعه هنا

(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#19

اي كود استاذ . كود ملف css + المشتقات + السكربت

 

ام ماذا بالتحديد

salah.jpg

#20

تفضل

 

عندما تدخل على ملف ستيتك راح تلقى ملفين images+files

 

ادخل على files

 

راح تلقى ملف css + اﻻشتقاقات

 

عندما تختار اﻻشتقاقات يخرج التصميم عندما تختار ملف css يخرج فقط الكود

 

وانا جربته وخرج التصميم عن طريق اﻻشتقاقات

 

حولت على رابط ال login

 

اختفى التصميم

 

احترامي , واسف على اﻻزعاج

 

http://localhostr.com/plSYJf2EJKvz

 

استاذ ان شاء الله اجد الحل باذن الله عندك

 

 

 

والله محتاج اتعلمه

تم تعديل هذه المشاركة بواسطة MuStafa - HaSsan في 3 مارس 2013 في 22:32

salah.jpg

#21

منتضر جوابك استاذ احمد .

salah.jpg

#22
MuStafa - HaSsan كتب:

الحمدلله اخي احمد بفضل الله انحل المشكلة اشكرك .

 

ﻻكن بقيت مشكلة وحدة هي

 

الكود صار ملخبط وكبير

اريد افصله

 

هل يجوز ان استدعيه خارجيا وكيف

 

لماذا تفصله؟ 

الحمد لله انها عملت الطريقة. :)

وما المشكلة اذا كان الكود كبير وملخبط, تذكر ما يهم المستخدم الشكل والمضمون

واتوقع انه لا يهتم للكود, اذاً انصحك بتركه كما هو.  ;)

لـآْ لآلـآـهِ آلـآ آلـآــهِ

سـَبـَح ـآ‘ـنـكِ آنـ‘َـيِ كـنـ‘َـتِ مـنِ آلـ‘َـضـآلـمـٌَـيـنِ

 

أخي الكريم.. ارجوا أن تسامحني.

نعم, أتكلم معك أنت.

#23

المبرمج يجب عليه ان يحترف في ترتيب كوده !!



عملت فيدو للمشكلة ﻻكن للاسف تعطب الرابط

salah.jpg

#24

السلام عليكم 

 

لم يسنح لي الوقت إلا الآن

 

1- يوجد لديك عدة مشاكل في الكود ، فأنت لاتفرق بين ال static files وبين ال views 

ال static files تضع فيها الصور، او ملفات ال css اما ال views فهي ال templates التي ستستخدمها في موقعك

لذا فتقوم بإنشاء ملجد views ومجلد static كل له وظيفته

 

2- لاتضع HTML في ملف ال css

 

3- الحل للمشكلة كالتالي

 

 
@route('/static/:filename#.*#')
def static(filename):
    return static_file(filename, root=os.path.join(os.getcwd(), 'static'))

في ال template (td.tpl)

قمت بإستدعاء خاطئ لملف ال css

 

<link rel="stylesheet" href="../static/files/style.css" type="text/css" />

 

هذا كفيل بتفعيل ملف ال css

تم تعديل هذه المشاركة بواسطة ahmed_youssef في 4 مارس 2013 في 16:41

(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#25

ان شاء الله اجربها اني اﻻن ليس في البيت بل في العمل

salah.jpg

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…