我们说我有:
<img src='static/images/banner/blue.jpg' />
Run Code Online (Sandbox Code Playgroud)
使用jQuery,我怎样才能获得blue数据?
如果我使用$('img').attr('src'),我可以得到整个URI.在这种情况下,删除扩展和所有路径的最佳方法是什么?
当我点击时,我仍然可以看到我的Git存储库:
Team > Git > Repository Browser
Run Code Online (Sandbox Code Playgroud)
即使我已从项目的文件中删除.git文件夹.
我试图断开/重新连接,仍然是相同的.
我Entity在Symfony2中有这个:
<?php
namespace Project\UserBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Users
*
* @ORM\Table(name="users")
* @ORM\Entity
*/
class Users
{
/**
* @var integer
*
* @ORM\Column(name="user_id", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $userId;
/**
* @var integer
*
* @ORM\Column(name="test", type="integer", nullable=false)
*/
private $test;
}
Run Code Online (Sandbox Code Playgroud)
我在{{userId}}和{{test}}之间添加以下行:
/**
* @var integer
*
* @ORM\Column(name="superbanana", type="integer", nullable=false)
*/
private $superbanana;
Run Code Online (Sandbox Code Playgroud)
然后我在控制台中执行:
php app/console doctrine:schema:update --dump-sql
Run Code Online (Sandbox Code Playgroud)
它给了我答复:
ALTER TABLE users ADD superbanana INT NOT NULL
Run Code Online (Sandbox Code Playgroud)
**我该怎么办呢?**
ALTER …Run Code Online (Sandbox Code Playgroud) 假设我有一个User实体:
$user = new User(007);
echo $user->getName(); // display Bond
echo $user->getGender(); // display "Male";
echo $user->getDesignation() // display "Monsieur Bond" or "Mister Bond"
Run Code Online (Sandbox Code Playgroud)
有了这个功能:
public function getDesignation() {
if ($this->getGender() == 'Male') return "Monsieur ".$this->getName();
else return "Madame ".$this->getName();
}
Run Code Online (Sandbox Code Playgroud)
如何使用此实体内的翻译服务翻译"Monsieur"和"Madame"?
似乎翻译服务应该只在Controller内部使用,但我认为在这种情况下在这个实体中使用它是合适的.
假设我有两个捆绑包:
Compagny\InterfaceBundleCompagny\UserBundle如何在InterfaceBundle的控制器中加载UserBundle实体?
在Controller我的Compagny/InterfaceBundle:
<?php
// src/Compagny/InterfaceBundle/Controller/DefaultController.php
namespace Compagny\InterfaceBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Compagny\UserBundle\Entity; // I believed this line will do the trick, but it doesn't
class DefaultController extends Controller
{
public function indexAction()
{
$user = new User();
}
}
Run Code Online (Sandbox Code Playgroud)
在Entity我的Compagny/UserBundle:
<?php
namespace Compagny\UserBundle\Entity
class User {
public $name;
public function setName($name) {
// ...
}
public function getName() {
// ...
}
}
Run Code Online (Sandbox Code Playgroud)
(我们在这个例子中说User类不使用Doctrine2,因为它不需要连接到数据库).
假设我有一User节课:
$user = new User(1);
$user->setName('Bob'); // save "bob" to database with ID 1
$user->setGender('Male'); // save "male" to database with ID 1
echo $user->getName(); // display bob
echo $user->getGender(); // display "male";
echo $user->getDesignation() // display "Mr. Bob"
Run Code Online (Sandbox Code Playgroud)
现在,在Symfony2中,使用Doctrine2,它似乎Entity是一个用于与数据库建立链接的对象.所以,我认为所有的setName(),setGender(),getName()和getGender()功能应该去一个文件,该文件是在里面Entity一包的目录(因为这些功能从数据库更新或SELECT数据).
但那怎么样getDesignation()?
public function getDesignation() {
if ($this->getGender() == 'Male') return "Mr. ".$this->getName();
else return "Ms. ".$this->getName();
}
Run Code Online (Sandbox Code Playgroud)
可以在实体中放置一个与数据库完全没有链接的函数吗?这不是一个坏习惯吗?
我们说我想通过AJAX加载这个文件:
<!-- loadme.html -->
<div class='content'>
Hello !
<div class='removeme'>Remove me, please.</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我怎样才能获得Hello内容?我尝试了多种方法来删除.removemediv,它总是失败:
$.ajax({
url: 'loadme.html',
success: function(data) {
var response = $('<div />').html(data);
// First try :
var content1 = response.find('.content').html()
console.log(content1); // Return : Hello ! <div class="removeme">Remove me, please.</div>
// Second Try :
var content2 = response.find('.content').remove('.removeme').html()
console.log(content2); // Return : Hello ! <div class="removeme">Remove me, please.</div>
// Third Try :
var content3 = response.find('.content').html();
console.log($(content3).remove('.removeme').html()); // Return : Remove me, …Run Code Online (Sandbox Code Playgroud) 我们说我有这个数组:
$numbers = array(1,2,3,4,5);
Run Code Online (Sandbox Code Playgroud)
这个数组:
$letters = array('A','B','C');
Run Code Online (Sandbox Code Playgroud)
我想随意$letters输入条目$numbers.我不关心顺序$letters,但我想$numbers保持秩序.目标是拥有这种阵列:
$randomLettersInNumbers = array(1, 'B', 2, 3, 'A', 4, 'C', 5);
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
我收到错误:
Call to undefined method Symfony\Component\Form\FormBuilder::createView()
Run Code Online (Sandbox Code Playgroud)
对于以下代码
public function searchAction(Request $request, $type) {
$filters = new Filters();
$form = $this->createFormBuilder($filters)
->setAction($this->generateUrl('project_search'))
->add('name', 'text');
if($type == 'extra') {
$form->add('job', 'text');
}
$form->add('send', 'submit', array('label' => "Envoyer"))
->getForm();
return $this->render('Bundle:Controller:search.html.twig', array(
'form' => $form->createView(),
));
}
Run Code Online (Sandbox Code Playgroud)
我相信这是因为我添加了一个新的输入$form->add('job', 'text');.我怎样才能解决这个问题 ?
我相信Symfony2的流程如下:请求 - >控制器 - >响应.
实际上,使用此代码,MessageController不返回响应对象,而只返回另一个Controller的值:
MessageController的Compagny/MessageBundle:
<?php
class MessageController extends Controller
{
public function getAction()
{
$message = "I display this message";
return $message; // It's not a new Response object, it returns only a value
}
}
Run Code Online (Sandbox Code Playgroud)
InterfaceController的Compagny/InterfaceBundle:
<?php
class InterfaceController extends Controller
{
public function indexAction()
{
$data = $this->forward('MessageBundle:Message:get');
$response = new Response($data);
return $response; // This one return a Response object
}
}
Run Code Online (Sandbox Code Playgroud)
这段代码是不好的做法吗?
我想使用forward()服务内部的方法。我定义http_kernel为我的服务的参数,但出现此错误:
FatalErrorException: Error: Call to undefined method forward()
Run Code Online (Sandbox Code Playgroud)
配置.yml:
my.service:
class: MyProject\MyBundle\MyService
arguments:
http_kernel: "@http_kernel"
Run Code Online (Sandbox Code Playgroud)
我的服务.php:
public function __construct($http_kernel) {
$this->http_kernel = $http_kernel;
$response = $this->http_kernel->forward('AcmeHelloBundle:Hello:fancy', array(
'name' => $name,
'color' => 'green',
));
}
Run Code Online (Sandbox Code Playgroud) 我有一个<button>,当用户将鼠标悬停时,光标变为指针(通过CSS).
当用户点击时<button>,所有页面的光标应该变为wait(通过jQuery).
但是,如果用户将光标保持在内部<button>,它将保持不变pointer.我怎样才能解决这个问题 ?
使用Chrome 36.0.1985.125(上一版本)测试
我想在 SCSS 中写这样的东西:
.username {
color: red;
@something .mobile {
font-weight: bold
}
@something .desktop {
font-weight: normal
}
}
Run Code Online (Sandbox Code Playgroud)
...在 CSS 中有以下输出:
.mobile .username {
color: red;
font-weight: bold
}
.desktop .username {
color: red;
font-weight: normal;
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
symfony ×7
php ×6
entity ×3
jquery ×3
css ×2
doctrine-orm ×2
javascript ×2
ajax ×1
arrays ×1
bundle ×1
containers ×1
controller ×1
cursor ×1
forms ×1
forward ×1
git ×1
html ×1
mysql ×1
netbeans ×1
object ×1
oop ×1
random ×1
repository ×1
routes ×1
sass ×1
scss-mixins ×1
service ×1
symfony-2.3 ×1
translation ×1
wrapper ×1